autoconf相关内容
我在 CentOS 5.5 上有 autoconf 2.59,需要升级到 autoconf 2.6.最好的方法是什么?我试过 yum update autoconf 但没有运气 解决方案 我会从 RPMForge 或 ATrpms 获得它,但我看不到他们也有.其他一些 CentOS 3rd 方存储库可能会.下载 GNU Autoconf 并构建它.
..
据我所知,./configure 脚本是用 GNU Autoconf 生成的.我根本不知道 Autoconf.这些工具是如何工作的,我如何使用这个 ./configure 脚本来制作交叉编译的源代码? 解决方案 这是一篇很好的关于如何交叉编译的小文章:http://linux.bytesex.org/cross-compiler.html. 交叉编译的主要部分是为编译器设置配置标志以
..
我有一个字符串,我想多次将其用于 configure --help 的输出.所以我尝试在 configure.ac 中做这样的事情: AC_ARG_ENABLE([foobar],AS_HELP_STRING([--enable-foobar], [$foobar_help_str])) 但是没有进行扩展或替换,所以输出只是$foobar_help_str. 解决方案 将字符串定义为
..
我需要使用 autotools 禁用单个文件的优化标志.最好的方法是什么? 解决方案 你是说一个单独的源文件还是一个单独的可执行文件? 禁用可执行文件优化很简单: bin_PROGRAMS = myprogmyprog_SOURCES = foo.c bar.cmyprog_CFLAGS = -O0 如果您的意思是要暂时禁用对单个源文件的优化,例如出于调试目的,您可以在提示符下重
..
我在尝试构建 libnice-0.1.10 时遇到此类错误.对于解决方案,我正在关注可能未定义的宏:AC_MSG_ERROR,但仍然没有得到 一些程序版本 uname: 3.5.0-23-generic米4:1.4.16汽车制造商:1.14.1自动配置:2.69库工具化:2.4.2 我还在 ~/.bashrc 中添加了 ACLOCAL_FLAGS=“-I/.../share/acloca
..
Autoconf 脚本在文件名或路径名有空格时有问题.例如, ./configure CPPFLAGS="-I\"/path with space\"" 结果(config.log): configure:3012: gcc -I"/path with space" conftest.c >&5gcc: with: 没有那个文件或目录gcc: space": 没有那个文件或目录 来自 ./
..
我的项目依赖于一个库(更准确地说是 GTK+),所以我在我的 configure.ac 中添加了以下配置: PKG_CHECK_MODULES([GTK], [gtk+-2.0])AC_SUBST([GTK_CFLAGS])AC_SUBST([GTK_LIBS]) 我的 Makefile.am 是: bin_PROGRAMS = 秘书秘书_SOURCES = 秘书.c 轮到我的secret
..
我正在构建支票框架示例“check_money",但它不是在我的机器上构建的.错误是: configure: error: cannot find install-sh, install.sh, or shtool in ".""./.." "./../.." 我尝试使用以下方法安装它: libtoolize --force本地的自动标题automake --force-missing --
..
configure 脚本总是在帮助消息中包含如下内容: ...默认情况下,`make install' 将安装所有文件`/usr/local/bin', `/usr/local/lib' 等你可以指定使用 `--prefix' 的除 `/usr/local' 之外的安装前缀,例如`--prefix=$HOME'.为了更好地控制,请使用以下选项.微调安装目录:--bindir=DIR 用户可执行文
..
我手头有一个大型项目(主),它被分成几个组件(liba、b、c、d)以简化构建和维护.在构建整个包时,必须依次构建所有子组件,其中一些包相互依赖. 更明确地说,liba 是 b、c 和 d 的先决条件,并且配置脚本检查 liba 的存在.在自行构建 b 发行版时,此检查对于提供用户友好的错误消息绝对是必要的.但是,在构建主包及其所有子包时,liba 被构建为子目标.因此,在主套件上运行con
..
我的目标是将所有目标文件构建在 .objs 目录而不是 Makefile 的根目录中,并将二进制文件(和库)复制到项目的 bin/ 目录中.但我一直无法找到任何资源来解释如何做到这一点.我该怎么做? 这是我的 configure.ac 和 src/Makefile.am - 我有两个引用的共享库的类似 Makefile.am 文件.它们进行编译,并在将它们复制到 bin/ 目录后正常工作.我
..
当交叉编译工具时,您通常必须提供“目标三元组".给出的例子 i686-pc-linux-gnu arm-none-linux-gnueabi powerpc-unknown-linux 等等... 这些三元组有时实际上是四个组成部分,具有以下形式: -[-]- 内核是可选的,制造商可以是“未知"或“无"之类的东西,因为它通常不相关. 我还没有找到一个页面,其
..
fcntl() 使用 struct flock 结构来定义和检查文件锁.不幸的是,在不同的 Unix 系统上,这个结构中的字段顺序不同.有谁知道如何使用 autoconf 检查它或至少检查结构是否采用特定格式(例如问题是 - 结构格式是否与 Linux 格式匹配)? 解决方案 您可以使用这个 autoconf 宏来查找 struct flock 的某个成员是否存在: AC_CHECK_M
..
我正在创建一个项目并使用 GNU Autoconf 工具进行配置和制作.我已经设置了所有的库检查和头文件检查,但似乎无法弄清楚如何检查系统上是否存在可执行文件,如果不存在则失败. 我试过了: AC_CHECK_PROG(TEST,testprogram,testprogram,AC_MSG_ERROR(Cannot find testprogram.)) 当我 configure 它运行
..
所以在我运行 libtool 并从我的库源中取出 libfoo.lo 和 foo.o 文件后,我如何转换 libfoo.lo 文件转换成一个普通的 Linux 共享库,比如 libfoo.so.1.0.0 以便我可以在我的目标系统上安装并链接到它? 解决方案 从问题中提到的输出来看,您似乎使用 --mode=compile 模式运行了 libtool.您将需要使用 --mode=link
..
我需要为使用自动配置构建的项目包含 GLib 标头 -基于系统的可移植性. 如何以可移植的方式安全地导入 GLib 标头?我知道 pkg-config,但这并不完全可移植(因为有些系统不没有它,我宁愿只依靠 autoconf 进行配置). 解决方案 GLib 2.22 INSTALL 文件指出 pkg-config 是安装此库的必要条件.我不是 GLib(双关语!);此要求的声明是
..
我花了一些时间让 autoconf 检查特定头文件的存在. 让我们将头文件依赖项称为“inky.h",假设 inky 是一个(单独)安装的库,前缀设置为“/usr/local".这将“inky.h"放在/usr/local/inky/inky.h 中,将 libinky.so 放在/usr/local/lib 中. 现在,我正在尝试验证 inky.h 在我的应用程序 configure
..
我只想用自动生成的 auto(make/conf/...) 东西在 linux 中开发一个 C 应用程序.我尝试用 ede 和 anjuta 生成它,但它似乎没有生成 Makefile.am.所以,我尝试运行 automake,它说找不到“ltmain.sh".是否有一些易于为 linux C/C++ 应用程序生成基本构建文件的方法.什么是标准做法?大多数人会自己编写这些文件吗? 解决方案
..
我有一个数据目录,我希望 automake 为其生成安装和卸载目标.本质上,我只想将此目录逐字复制到 DATA 目录,通常,我可能会单独列出所有文件,例如 dist_whatever_DATA=dir/subdir/filea ... 但是当我的目录结构是这样的时候问题就出现了 *root*子目录*~10 个文件*子目录*~10 个文件*子目录*~700 个文件*子目录...~20 个子目录
..
我是 autotools 新手我很难弄清楚如何轻松地将特定库链接到配置的目标之一. 我有一个源包,我想以通常的方式构建:./configure &&制作&&进行安装 不幸的是,其中一个 cpps 缺少对另一个库的引用.手动编译(调整命令行)有效.但我宁愿“修补"编译脚本.编辑链接引用的标准位置在哪里? 对 `boost::system::get_system_category()
..