我正在尝试编译一个使用libusb
和修改后的libusb
for android的工具。
已修改libusb
已按预期编译并安装到/usr/local/lib
。
问题是独立toolchain
已经包含libusb
并且会损害链接/编译。
./configure
返回:
...
checking for usb_get_string_simple in -lusb... yes
...
libusb
如果发现没问题。
但是使用独立的toolchain
:
export CROSS_COMPILE=arm-linux-androideabi
export CC=${CROSS_COMPILE}-gcc
export CXX=${CROSS_COMPILE}=g++
export NDK=/softdev/android-ndk-r8e
export ANDROID_NDK_ROOT=/softdev/android-ndk-r8e
export SYSROOT=$NDK/platforms/android-8/arch-arm
export PATH=/softdev/arm-toolchain/bin:$PATH:/softdev/android-ndk-r8e/platforms/android-8/arch-arm
./configure --build=x86-unknown-linux-gnu --host=arm-linux-androideabi --target=arm-linux-androideabi
它返回:
...
checking for usb_get_string_simple in -lusb... no
...
如何使其与独立toolchain
一起使用?
使用libusb-0.1
答案 0 :(得分:1)
好吧,最后我能够解决它。
所以我通过在搜索libusb-0.1(-lusb-1.0)时添加依赖来解决它:
AC_CHECK_LIB([usb], [usb_get_string_simple], [have_libusb=yes], [], [-lusb-1.0])
2。另一个问题是让AC_CHECK找不到标准系统/ usr / local / lib文件夹中的libs,因为修改后的库接口有点不同 并且它在使用AC_CHECK_LIB搜索时尝试使用系统1进行gcc。我使用CPPFLAGS来设置正确的libs路径