问题标签 [autotools]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
include - autoconf,如何从 AC_CONFIG_SRCDIR 文件中包含文件
我希望能够在配置运行期间将两个文件合并为一个。我已经AC_CONFIG_SRCDIR[file.hpp]
在某些文件上使用宏进行了纹理替换。是否有一些指令可以包含来自file.hpp.in
、某种@include (another.hpp) @
或类似的文件?
谢谢
php - 为 LAMP 应用程序使用自动工具
我有一个应该很快发布的 LAMP (Linux/Apache/MySQL/Php) 应用程序。
即使我从未使用过它,我也在考虑使用自动工具,以使配置和安装过程更容易(对客户和我来说,在未来)。
你有没有做过(或想过)这样的事情?有什么缺点吗?是不是有点意思?
python - 在 configure.ac 中检查 AX_PYTHON_MODULE 的结果
在 configure.ac (AX_PYTHON_MODULE) 中使用 m4_ax_python_module.m4 宏时,可以在配置时知道是否安装了给定模块。它有两个参数,模块名称和第二个参数,如果不为空,将导致退出,当模块是必备时很有用。
在您不想要致命退出的情况下,如何在 configure.ac 中测试找到了哪些模块?运行配置时它们会输出“是”或“否”,但这就是我目前所发现的。基本上如果我在configure.ac中有这些行:
编辑:在模块名称周围添加方括号
如何测试找到了两个模块中的哪一个?
有关此宏的文档,请参见http://www.gnu.org/software/autoconf-archive/ax_python_module.html#ax_python_module。
c++ - 如何在运行时摆脱 LD_LIBRARY_PATH?
我正在构建一个使用英特尔IPP库的 C++ 应用程序。该库默认安装在 /opt 中,需要您设置LD_LIBRARY_PATH
编译和运行软件(如果您选择共享库链接,我这样做了)。我已经修改了我的configure.ac
/Makefile.am
以便在编译时不需要设置该变量,但是在运行时我仍然找不到共享库;我怎么做?
我正在使用-Wl, -R/path/to/libdir
标志编译g++
更新 1:实际上我的二进制程序有一些正确链接的 IPP 库,但只有一个不是:
当然图书馆在那里:
makefile - Makefile.am 和 Makefile.in 是什么?
这两个文件大多出现在开源项目中。
它们的用途是什么,它们是如何工作的?
gcc - 使用自动工具时 PACKAGE_NAME 和其他宏冲突
当对库和基于该库构建的软件使用自动工具(带有config.h
文件)时,编译器会抱怨重新定义了某些宏(PACKAGE_NAME、PACKAGE_TARNAME 等)。
我怎样才能防止这种情况?
库中需要该config.h
文件以将其设置传播到使用它的软件。
现在我有一个library_config.h
包含原始文件的包装脚本,config.h
并在用户不使用自动工具时提供默认值,但即使取消定义该包中的宏,我也会收到来自 gcc 的重新定义警告。
我相信最好的选择是拥有一个没有该宏的库:使用自动工具时,如何避免在库中定义 PACKAGE、PACKAGE_NAME 等?
编辑:尝试更好地解释。
在库中使用AC_CONFIG_HEADER
宏时,configure.ac
我会生成一个config.h
包含许多有用定义的文件。这个定义对于库本身(对于它的编译部分和它的头文件)和客户端软件都很有用。然而遗憾的是,AC_CONFIG_HEADER
将我需要的有用宏与其他具有固定名称(PACKAGE、PACKAGE_NAME)的通用定义混合在一起,当自动工具也用于客户端软件配置时会发生冲突。
makefile - autotools 中有关 EXTRA_SCRIPTS 变量的文档在哪里?
Makefile.am 中的 EXTRA_SCRIPTS 变量是什么?它记录在哪里?
gnu - 您如何定义在 ./configure --help 中看到的选项?
我目前正在尝试设置一个要使用 autotools 安装的软件包。
在大多数(如果不是全部)主要软件包中,configure --help 列出了大量选项,例如 ./configure --ENABLE-FLOAT 等。我想知道在哪里可以定义这些选项。
谢谢,
山姆
linux - 在不安装包的情况下预览手册页
我检查了一些使用自动工具的典型开源项目。我想对这个包进行一些修改,但我也想在包的手册页中进行一些更改。
手册页源代码位于 project-name/doc/project-name.1。我只是做了一个小改动,现在我想预览这个改动,而不必实际对项目进行 make install。我怎么做?
我尝试过类似的东西:
但它不起作用,我尝试过的各种变体也不起作用。这听起来像一个简单的问题,但我似乎无法通过谷歌搜索找到任何问题,所以我希望这里有人可以帮助我。谢谢。
autotools - Automake:如何添加构建步骤?
目前,我有一个构建链,完全由 automake 管理,例如:
我想添加一个新步骤,将 XML 文件 .ui 预处理为 vala 源:
我这样做了,在 makefile.am
和:
但是make不明白:
这似乎是make的限制:
http://www.ensta.fr/~diam/dev/online/autoconf/autobook/autobook_180.html
如果翻译需要三个步骤——从
.m' to
.x',然后从.x' to
.c',最后到 `.o'——那么 Automake 的简单化方法将被打破。
你有别的想法吗?