我有自己的正常工作2个自动工具项目:是否有可能在autotools项目目录中有一个不相关的autotools项目?
P1没有建立任何库也不能使用C++,并意味着由用户进行编译。所以我不在这里进行libtoolize和LT_INIT。
p2创建一个仅用于开发的小型C++库,在这里我有LT_INIT并调用libtoolize。
但是当我把P2目录内P1,运行P2目录内的automake会发现,它是在一个自动工具项目的子目录,然后我得到的错误
configure.ac:31: required file `../ltmain.sh' not found
我尝试添加
AC_CONFIG_AUX_DIR([.])
到P2的configure.ac,但随后在配置ac_aux_dir变量变空,而我得到的错误
configure: error: cannot run /bin/sh /config.sub
(在配置行试图运行$ax_aux_dir/config.sub
)
有没有干净的方式有一个自动工具项目中一个不相关的自动工具项目,或者我应该干脆放弃?
当我尝试这一点,似乎运行autoreconf/P1中配置将尝试配置P2(至少它说'配置在P2 \ n请:警告:没有配置信息在p2'中)。我不想让P1完全依赖P2。 – unhammer
如果你想让它们完全分开,我会把它们放在不同的目录中。如果你想让它们相关,但是可选的,我会使用'if test -d“$ srcdir/p2”;那么'AC_CONFIG_SUBDIRS'的语法。 – Flexo