libtool : X--tag=CC: command not found 错误

来源:互联网 发布:比较好的经济类数据库 编辑:程序博客网 时间:2024/05/16 14:18

GCC编译代码时,执行./configure在代码目录下生成了libtool脚本,再执行make 出现类似以下错误

 

 

Error代码  收藏代码
  1. ../libtool: line 832: X--tag=CC: command not found  
  2. ../libtool: line 865: libtool: ignoring unknown tag : command not found  
  3. ../libtool: line 832: X--mode=compile: command not found  
  4. ../libtool: line 998: *** Warning: inferring the mode of operation is deprecated.: command not found  
  5. ../libtool: line 999: *** Future versions of Libtool will require --mode=MODE be specified.: command not found  
  6. ../libtool: line 1142: Xgcc: command not found  
  7. ../libtool: line 1142: X-DHAVE_CONFIG_H: command not found  
  8. ../libtool: line 1142: X-I.: command not found  
  9. ../libtool: line 1142: X-I../include: No such file or directory  
  10. ../libtool: line 1142: X-g: command not found  
  11. ../libtool: line 1142: X-I/usr/local/include: No such file or directory  
  12. ../libtool: line 1142: X-g: command not found  
  13. ../libtool: line 1142: X-O2: command not found  
  14. ../libtool: line 1142: X-MT: command not found  
  15. ../libtool: line 1142: Xargs.lo: command not found  
  16. ../libtool: line 1142: X-MD: command not found  
  17. ../libtool: line 1142: X-MP: command not found  
  18. ../libtool: line 1142: X-MF: command not found  
  19. ../libtool: line 1142: X.deps/args.Tpo: No such file or directory  
  20. ../libtool: line 1142: X-c: command not found  
  21. ../libtool: line 1193: Xargs.lo: command not found  
  22. ../libtool: line 1198: libtool: compile: cannot determine name of library object from `': command not found  

 

原因据说是因为在项目目录下生成的libtool脚本中定义了$ECHO变量,但是在脚本文件ltmain.sh中,使用的却是$echo(生成的libtool版本太旧)

打开aclocal.m4文件,可以在很前面的一段配置中找到这么两句

 

Config代码  收藏代码
  1. # This can be used to rebuild libtool when needed  
  2. LIBTOOL_DEPS="$ltmain"  
  3.   
  4. # Always use our own libtool.  
  5. LIBTOOL='$(SHELL) $(top_builddir)/libtool'  
  6. AC_SUBST(LIBTOOL)dnl  
 

 

可通过以下方法解决:

 

1. 直接复制系统自带的libtool到项目目录,应该在/usr/bin目录下,覆盖代码文件目录下的libtool,再执行make

(没装就apt-get install libtool 或者 yum install libtool 安装一下吧)

 

2.  修改aclocal.m4文件,将上面的LIBTOOL='$(SHELL) $(top_builddir)/libtool'改成LIBTOOL='$(SHELL)  /usr/bin/libtool'后重新执行./configure

 

3. 将源码目录下libtool脚本中所有的$ECHO替换成$echo. 或者将脚本文件ltmain.sh里的$echo替换成$ECHO,都一样,重新执行./configure


另一种解决方案

 export echo=echo  回车后 make  正常

0 0
原创粉丝点击