emacs - 什么是 ltmain.sh,为什么 automake 说它丢失了?什么是好的自动(make/conf/etc)生成器?

标签 emacs autoconf automake anjuta

我只想用自动生成的 auto(make/conf/...) 东西在 linux 中开发一个 C 应用程序。我尝试用 ede 和 anjuta 生成它,但它似乎没有生成 Makefile.am。所以,我尝试运行 automake,它说找不到“ltmain.sh”。是否有一些易于为 linux C/C++ 应用程序生成基本构建文件的方法。什么是标准做法?大多数人自己编写这些文件吗?

最佳答案

生成一组非常简单的自动工具文件非常容易。这是一个(非常基本的)示例。运行这些后,您应该在目录中获得 ltmain.sh 的副本,并且您将准备好运行配置脚本:

$ mkdir 示例
$ cd sample
$ echo 'int main( void ) { return 0; }' > foo.c
$ echo 'bin_PROGRAMS = foo' > Makefile.am
$自动扫描
$ mv configure.scan configure.ac
$ # 编辑configure.ac,添加AM_INIT_AUTOMAKE([foreign])
$#和LT_INIT,设置项目名称和bug-report-address
$ autoreconf -ivf

请注意,在此示例中,实际上不需要 libtool,因为
该示例只是构建一个简单的应用程序。但是你问的是
ltmain.sh,这是一个 libtool 的东西,所以需要 LT_INIT
解决问题的那部分。如果你想建
一个库,将 bin_PROGRAMS 更改为 lib_LTLIBRARIES。

关于emacs - 什么是 ltmain.sh,为什么 automake 说它丢失了?什么是好的自动(make/conf/etc)生成器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2807915/

相关文章:

c - autoconf:检查成员的偏移量

c++ - 使用 configure.ac 找不到 boost c++

c++ - eclipse 调试没有按预期工作

c++ - 链接标志对于静态库意味着什么?

python - Emacs - Python LSP setup.cfg 不受支持

emacs - 如何在emacs中调用latexmk,并跳转到下一个错误

macos - 如何在 Mac OS X 10.6 上升级到 Autoconf 2.6.2 或更高版本?

c++ - 使用 GNU AutoTools 设置和使用数据目录路径

java - 如何在 emacs 中为 Java 类实现 'generate getter/setter'?

git - Emacs shell : save commit message