构建独立的库
Building standalone libraries
我正试图将一个大项目交叉编译到android(太大了,无法将其移植到ndk构建格式)。我来自Java世界,所以我对所有这些编译、C、C++都很陌生。事情是这样的:
这个大项目使用xerces-c作为一个库,这个库在当时依赖于ICU代码转换器。我对它们进行了交叉编译,生成了libxerces-c.a、libicuuc.a和libicudata.a
当我交叉编译我的大项目时,configure会检查头(它们是)和xerces-c库。但是,当我运行make命令时,执行失败,因为-licuuc-licudata不在编译命令上。
有没有一种方法可以创建一个包括libicuuc和libicudata的独立libxerces-c?我可以包括在CFLAGS、CXXFLAGS或LDFLAGS中的一些标志?配置脚本上的某个参数?
由于我对这方面还很陌生,举个例子会很有用。提前感谢您的帮助
在Makefiles中,您可以定义要在所有命令行中使用的表达式。如果您正确使用此功能,您可以对任意多(或少)个文件使用相同的命令。在您从其他项目中看到的Makefiles中,您会看到人们通常将CFLAGS用于C编译器的(意外)标志和选项,将LIBS用于链接器,但您可以将任何您喜欢的名称用于宏。
您还可以定义要操作的文件和它们所依赖的文件的列表。
在Linux上,一些软件包还安装了一个配置文件,允许使用名为pkg-config
的应用程序来查找该软件包的所有标志和库选项。这样可以避免将显式路径硬连接到Makefile中。
这里有几个教程:
简单教程。
另一个介绍
相关文章:
- C++为构建时间获取QDateTime的可靠方法
- 无法在 CLion 中构建 C++ 项目
- 函数向量_指针有不同的原型,我可以构建一个吗
- 如何使用ndk-build.cmd构建Android.so文件
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- 独立读取-修改-写入顺序
- CMake 将目标作为项目的一部分独立构建
- 以独立于路径/安装/构建的方式了解资源路径的好方法
- 使用Qt制作静态构建(独立应用程序)
- 如何构建独立于编译器的C++库(适用于 Solaris Studio 和 gcc)
- 如何用visual C++构建独立的SDL项目
- 如何将visual studio 2010解决方案构建为独立的dll
- 构建独立的库
- 如何在c++中使用qmake构建一个独立的共享库
- 创建目录层次结构,独立构建子目录
- 用c++插件为nodejs应用程序构建一个独立的可执行文件
- NDK12b: clang和gcc使用独立的工具链和相同的构建脚本生成不同的ELF
- CMake从Ubuntu为RedHat EL6构建了一个独立的二进制文件,其中包含依赖的共享库
- 在Windows8上使用Qtcreator构建(编译)一个基本的独立.exe应用程序