1

我维护一个包自动配置,用于PKG_CHECK_MODULES查找我的代码所依赖的库。我想让旨在交叉编译我的包的人更容易:主要问题PKG_CHECK_MODULES是它获取 BUILD 系统信息而不是 HOST。

我的方法如下:我不使用HOST系统的rootfs,而是分别编译我的包所依赖的每个包。然后,我希望能够在调用srcipt时强制使用DEPENDSON_LIBSor的值。这是一个好方法吗?如何编写 configure.in 以允许这样做?DEPENDSON_CFLAGS./configure

注意:我试过AC_ARG_VAR 没有成功......

4

1 回答 1

1

PKG_CHECK_MODULES首先检查是否host-prefix-pkg-config存在,然后回退到无前缀pkg-config(这可能会产生令人困惑的结果)。

我不确定我是否理解您的方法(第二段),但无论如何我都会为用户设置正确的路径。您可以添加AC_CHECK_LIBafterPKG_CHECK_MODULES以检查选择的库是否与编译器用于同一系统。

交叉编译的用户可能host-prefix-pkg-config已经安装了,例如一些linux发行版除了MinGW交叉编译器外还打包了它。如果没有,设置适当的环境就足够了。变量。Autotools Mythbuster 推荐设置这些变量的包装器

万不得已,用户可以直接设置*_CFLAGS*_LIBS

于 2012-10-28T15:15:38.220 回答