lza*_*zap 1 autoconf autotools
我想用我的应用程序分发我的启动脚本.它被称为"blah",它位于我项目的脚本/文件夹中.我在configure.ac中有这个:
...
AC_CONFIG_FILES([
Makefile
scripts/Makefile
....
])
AC_CONFIG_FILES([scripts/blah], [chmod +x scripts/blah])
AC_OUTPUT
Run Code Online (Sandbox Code Playgroud)
在scripts目录中,我有以下Makefile.am:
dist_bin_SCRIPTS = blah
CLEANFILES = $(bin_SCRIPTS)
Run Code Online (Sandbox Code Playgroud)
在同一个目录中,我有"blah.in"文件.
但是当我做"make install"时它会创建脚本/ blah,bot不会将它安装到/ usr/local/bin目录.我的设置有什么问题?谢谢
如果你必须从那时AC_CONFIG_FILES([scripts/blah], ...)开始创建script/blah,script/blah.in你应该只分发script/blah.in(这会自动发生作为使用的副作用AC_CONFIG_FILES)而不是分发script/blah.
你Makefile应该读
bin_SCRIPTS = blah # not dist_bin_SCRIPTS
CLEANFILES = $(bin_SCRIPTS)
Run Code Online (Sandbox Code Playgroud)
如果您只是想按原样分发和安装脚本,而不configure使用它来生成,请仅使用
dist_bin_SCRIPTS = blah
Run Code Online (Sandbox Code Playgroud)
并省略CLEANFILES和AC_CONFIG_FILES行.
现在这不是你真正的错误.查看你的github文件,我可以看到scripts它没有出现在SUBDIRS你的root变量中Makefile.am.因此make install不会递归到该子目录,也不会安装脚本.
| 归档时间: |
|
| 查看次数: |
2100 次 |
| 最近记录: |