在Android make期间无法编译libusbx

时间:2015-08-24 14:55:41

标签: android gcc automake libusb-1.0

我正在尝试为我的设备编译CM 12.1。建设时,我得到以下错误。我也安装了libusb-1.0-0-dev。我错过了什么?

如果我只使用cflags编译一个文件,我可以获取.o文件,但在构建整个代码时,如何指定Make文件才能工作。

使用gcc :(成功)

gcc external/libusbx/examples/listdevs.c -o out/target/product/bacon/obj/EXECUTABLES/listdevs_intermediates/listdevs.o `pkg-config --libs --cflags libusb-1.0`

使用Android make :(失败)

   external/libusbx/android/jni/../../examples/listdevs.c:22:20: fatal error: libusb.h: No such file or directory

 #include "libusb.h"

compilation terminated.
build/core/binary.mk:699: recipe for target '/home/risingup/CM12.1/out/target/product/bacon/obj/EXECUTABLES/listdevs_intermediates/../../examples/listdevs.o' failed
make: *** [/home/risingup/CM12.1/out/target/product/bacon/obj/EXECUTABLES/listdevs_intermediates/../../examples/listdevs.o] Error 1
make: *** Deleting file '/home/risingup/CM12.1/out/target/product/bacon/obj/EXECUTABLES/listdevs_intermediates/../../examples/listdevs.o'

1 个答案:

答案 0 :(得分:0)

最后,我通过将此添加到.repo / local_manifests / local_manifests.xml和repo同步来解决了这个问题。我认为这些不是必需的,因为我使用./extract-files.sh从我的手机中提取了propetierary blob,但事实并非如此。我的坏......而且,再次制造破坏并重建。

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="TheMuppets/proprietary_vendor_oppo" path="vendor/oppo" remote="github" revision="cm-12.1" />
<project name="TheMuppets/proprietary_vendor_oneplus" path="vendor/oneplus" remote="github" revision="cm-12.1" />
</manifest>

P.S。同样对于未来的读者,请确保创建一个4 GB或更多的交换文件,因为构建过程需要大量内存,尤其是构建libwebviewchromium.so。