如何使用arm-linux-gnueabihf-gcc编译器交叉编译libxml2?如何在交叉编译时使用第三方库?

3

我尝试交叉编译时出现了错误

/usr/include/libxml2/libxml/encoding.h:31:26: 致命错误: unicode/ucnv.h: 没有那个文件或目录 编译终止。


我猜你需要 libicu-dev 软件包。 - rkosegi
2个回答

0

使用 arm-linux-gnueabihf-gcc -c -o test test.c -L/path/to/unicode/directory -lucnv.h 进行编译


这只展示了如何编译和链接单个C文件,对于构建libxml2没有任何帮助。 - nwellnhof

0
在最近的libxml2版本中,configure脚本尝试使用pkg-config检测ICU。根据您的设置,这可能会在交叉编译时导致误报(有关详细信息,请参见Autotools Mythbuster)。我建议通过传递--without-icu来禁用ICU支持。ICU是一个庞大的库,而libxml2仅使用它来在字符集之间进行转换。它还支持libiconv,后者要小得多。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接