setup进行单节点部署之排错分析(2)

问题2、configure过程出现错误

特点:这个错误我一开始认为是因为缺少这个叫odbc的错误引起的,但是装了odbc后还是出错,后来发现这里的信息应该这样看:STDERR: configure: WARNING: No odbc library found skipping odbc。出错的地方是configure,意思是配置文件在你初始化配置的时候出现错误。

注:当时还出现下面的错误信息,其实这部分信息不止一个错误,但是我们先关注第一个错。

STDERR: configure: WARNING: No odbc library found skipping odbc 

configure: WARNING: "ODBC library - link check failed" 

configure: WARNING: No OpenGL headers found, wx will NOT be usable 

configure: WARNING: 

                wxWidgets must be installed on your system. 

 

        Please check that wx-config is in path, the directory 

        where wxWidgets libraries are installed (returned by 

        'wx-config --libs' or 'wx-config --static --libs' command) 

        is in LD_LIBRARY_PATH or equivalent variable and 

        wxWidgets version is 2.8.4 or above. 

configure: WARNING: No 'xsltproc' command found: the documentation cannot be built 

configure: WARNING: No 'fop' command found: going to generate placeholder PDF files 

gcc: fatal error: no input files 

compilation terminated. 

make[3]: *** [../ebin/hipe_consttab.beam] Aborted 

make[2]: *** [opt] Error 2 

make[1]: *** [opt] Error 2 

make: *** [secondary_bootstrap_build] Error 2 

make[3]: *** [../ebin/hipe_consttab.beam] Aborted 

make[2]: *** [opt] Error 2 

make[1]: *** [opt] Error 2 

make: *** [secondary_bootstrap_build] Error 2 

---- End output of "bash"  "/tmp/chef-script20120930-18247-lp90nh-0" ---- 

Ran "bash"  "/tmp/chef-script20120930-18247-lp90nh-0" returned 2 

那怎么解决这个问题呢?当然是去找这个configure文件,然后定位到出错这一行,看看它到底要做什么。

不过我当时比较懒,而且问了一下度娘一下子就找到答案了,所以也就没去看configure文件了。不过我们学学对方怎么分析的吧

浏览了一下configure的log,发县有"No odbc library found skipping odbc",将问题定位到了$src/lib/odbc/configure.in 178行

if test -f "$dir/include/sql.h"; then   

  is_odbc_std_location=yes   

  ODBC_LIB=-L"$dir/lib"   

  ODBC_INCLUDE="-I$dir/include"   

  break   

fi   

缺少头文件sql.h,所以这个问题其实和libiodbc、libodbc没有关系,需要的是unixodbc和unixodbc-dev。

不过我现在也有疑问,作者是如何根据缺少sql.h就能判断缺少后面的两个东西的?

注:这种缺少头文件的情况下,会有大量的提示信息找不到XXX符号,这也是一种比较明显的提示信息了。

这种在configure中出现的问题要如何解决,我正在探索中,大家也不妨去找找相关的文章看看是怎么解决的,应该有一个解决方法的。

注:现在提供的很多源码包都会带有configure文件,我们在编译之前,都会执行这个configure文件,它会检测我们系统的情况生成相应的Makefile文件。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/656f57704f19a2e976cf3c8b0acc7e9c.html