libOpenCL.so verwendet VFP register arguments, Ausgabe nicht
derzeit bin ich versuchen zu bauen Buddhabrot für ARM-Architektur
aber ich komme an einer Stelle, als ich die folgende Fehlermeldung erhalten. Ich hoffe, jemand kann helfen.
libOpenCL.so uses VFP register arguments, output does not
libGAL.so uses VFP register arguments, output does not
hier ist mein makefile
LIBS = -lm -lOpenCL -lGAL -lGL -lGLEW -lglut -lpthread
CFLAGS = -Wall -g
OBJECTS = main.o environment.o input.o animate.o buddhabrot.o buddhacl.o cmodules/timer.o
all: prog
prog: $(OBJECTS)
c++ $(CFLAGS) -o prog $(OBJECTS) $(LIBS)
%.o: %.cpp $(LIBS)
clean:
rm -f *.o prog cmodules/*.o
c++ -v-Ausgang
Using built-in specs.
COLLECT_GCC=c++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabi/4.6.1/lto-wrapper
Target: arm-linux-gnueabi
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.1-9ubuntu3' --with- bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ -- prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/--enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-plugin --enable-objc-gc --enable-multilib --disable-sjlj-exceptions --with-arch=armv7-a --with-float=softfp --with-fpu=vfpv3-d16 --with-mode=thumb --disable-werror --enable-checking=release --build=arm-linux-gnueabi --host=arm- linux-gnueabi --target=arm-linux-gnueabi
Thread model: posix
gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3)
InformationsquelleAutor raddirad | 2014-04-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser sagt Ihnen, dass libOpenCL.so und libGAL.so sind mit hard-floating-Punkte und die VFP Einheit, aber Ihr Programm wird kompiliert, um ein Programm, das mit weichen, schwebenden Punkte.
Verwenden Sie die
-mfloat-abi=hard
Flagge, und möglicherweise-mfpu=vfp
flag (siehe die gcc Manpage für andere vfp-Varianten, die geeignet sein könnte).Wenn Ihre Plattform nicht unterstützt, ist ein hard-float ABI, oder Ihr Prozessor nicht über eine floating point unit verwenden, können Sie diese beiden Bibliotheken.
Zur Klärung der oben genannten Antwort, Sie könnte sehen, dass dieses Problem, wenn die flags für den compiler und den linker nicht übereinstimmen.
InformationsquelleAutor nos
Ihre cross-compiler dont support hard-float, versuchen arm-linux-gnueabihf anstelle,es funktioniert für mich.
InformationsquelleAutor fishingMonster