如何恢复此前运行configure时使用的命令行参数?
恢复configure命令行参数的方法
直接查看旧Makefile的注释
大多数autotools生成的Makefile开头会完整记录当初运行的configure命令,比如开头会有类似# Created by ./configure --prefix=/usr/local --enable-debug的注释。直接打开旧Makefile看开头部分,或者用命令快速搜索:grep -m 1 "configure" 旧Makefile路径检查旧的config.status文件
运行configure后默认会生成config.status文件,这个文件里保存了完整的configure命令参数,甚至包含当时的环境变量。打开它就能找到,或者用命令提取:grep "configure_args" 旧config.status路径通常会输出类似
configure_args="--prefix=/usr/local --enable-xxx"的内容,就是你要的参数。从旧config.log中提取
如果保留了旧的config.log文件,里面会明确记录configure的完整命令行,搜索关键词即可:grep "Command line:" 旧config.log路径对比配置反推参数
如果上面的文件都找不到,就从旧Makefile的配置项反推:- 比如Makefile里的
prefix = /opt/myapp对应--prefix=/opt/myapp; - 若有
CFLAGS = -O2 -g,可能对应--enable-debug或者手动指定了CFLAGS环境变量; - 查看旧configure脚本的帮助(
./旧configure路径 --help),对比Makefile里的启用/禁用功能项,比如HAVE_FEATURE = yes对应--enable-feature。
- 比如Makefile里的
内容的提问来源于stack exchange,提问作者FalcoGer
相关产品推荐
相关产品推荐

