0
我正在交叉編譯Qt應用程序。我的主機是Ubuntu系統,目標是基於buildroot的文件系統的ARM板,我正在使用Qt 5.3.1。當我試圖運行make,我得到以下錯誤:qmake在絕對路徑中搜索庫
/home/hamzah/vibrante/toolchains/tegra-4.8.1-nv/usr/bin/armv7a-vfpv3-cortex_a15-linux-gnueabi/../../libexec/armv7a-vfpv3-cortex_a15-linux-gnueabi/gcc/arm-cortex_a15-linux-gnueabi/4.8.1/ld: cannot find /lib/libpthread.so.0
/home/hamzah/vibrante/toolchains/tegra-4.8.1-nv/usr/bin/armv7a-vfpv3-cortex_a15-linux-gnueabi/../../libexec/armv7a-vfpv3-cortex_a15-linux-gnueabi/gcc/arm-cortex_a15-linux-gnueabi/4.8.1/ld: cannot find /usr/lib/libpthread_nonshared.a
collect2: error: ld returned 1 exit status
正如你所看到的,它使用的目標絕對路徑libpthread.so.0
和libpthread_nonshared.a
。該庫放置在主機上託管的目標文件系統中。目標庫搜索路徑已使用QMAKE_LIBDIR
變量qmake.conf
中添加:
QMAKE_LIBDIR += /home/hamzah/buildroot/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot
QMAKE_LIBDIR += /home/hamzah/buildroot/output/host/usr/arm-buildroot-linux-gueabihf/sysroot/usr/lib
我需要知道如何讓ld
能夠找到使用sysroot
變量或任何其他方式這個庫。
PS:我正在編譯Qt應用程序。預構建的Qt應用程序正在我的主機和目標上運行
它構建了一切如此之快,我懷疑它。在Makefile中工作就像一個魅力 – Hamzahfrq 2014-10-02 11:33:57
_LFLAGS = --sysroot = paht/to/ur/sysroot_這是我一直在尋找的!我仍然不知道它在qmake.conf中指定的位置,但編譯工作 – Hamzahfrq 2014-10-02 11:43:25