我在virtualbox上使用ubuntu(32位)。我正在尝试添加rtlsdr库,但Qt创建者找不到rtlsdr库。该库位于/usr/local/lib/librtlsdr.so中,我尝试将以下内容添加到我的.pro文件中
LIBS += -L/usr/local/lib -lrtlsdr
INCLUDEPATH +=usr/local/lib但我得到以下错误:
/home/luis/qt-bbb/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/arm-linux-gnueabihf-g++ -Wl,-rpath-link=/home/luis/qt-bbb/tslib/lib -Wl,-rpath,/opt/qt-arm/lib -o qt-test main.o mainwindow.o moc_mainwindow.o -L/home/luis/qt-bbb/tslib/lib -L/opt/qt-arm/lib -L/home/luis/qt-arm/rtl-sdr/build/src/ -lrtlsdr -lQtGui -L/opt/qt-arm/lib -L/home/luis/qt-bbb/tslib/lib -lQtNetwork -lQtCore -lpthread
/home/luis/qt-bbb/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: *skipping incompatible /home/luis/qt-arm/rtl-sdr/build/src//librtlsdr.so when searching for -lrtlsdr*
/home/luis/qt-bbb/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: *skipping incompatible /home/luis/qt-arm/rtl-sdr/build/src//librtlsdr.a when searching for -lrtlsdr*
Makefile:105: recipe for target 'qt-test' failed
/home/luis/qt-bbb/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lrtlsdr
collect2: error: ld returned 1 exit status
make: *** [qt-test] Error 1我正在使用ubuntu 32位交叉编译我的beaglebone运行debian。在我的beaglebone上部署工作正常,我验证了库是32位的,所以我不知道为什么它找不到它们,或者为什么它给我“跳过不兼容”的消息。我也尝试通过右键单击.pro->add库来添加它们,但仍然找不到它们。
发布于 2017-03-30 16:48:13
skipping incompatible会提示您无法链接库。可能是用错误的编译器编译的- Sebastian Lange
好了,我发现了我的问题,这个库是为x86而不是arm构建的。-谢谢你的提示!- luismbedder
https://stackoverflow.com/questions/27370804
复制相似问题