注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

让一切都逝去吧

排骨炖泥菜/猪肝炒苹果/鱼籽狗肉汤/狗头薏米汤

 
 
 

日志

 
 

在Windows中源码编译出错  

2010-08-10 16:20:27|  分类: C/C++ |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
      在安装nagios的oracle状态检查插件check_oracle_health时,./configure阶段,出现错误:error: cannot run /bin/sh ./config.sub。运行环境:check_oracle_health是源码编译安装的,因此需安装c++编译环境,我使用的是cygwin。安装好后,开始在cygwin里面安装check_oracle_health,取得压缩包check_oracle_health-1.6.4.tar.gz,接下来,万恶的一步开始了,我用winrar打开gz文件,把里面的check_oracle_health源码文件直接拖出来了。正确方法稍后再说,对于当前这个错误,有人描述是因为libtool未安装,重新运行cygwin安装程序,添加libtool,安装后有以下错误提示:
Package: fontconfig
    fontconfig.sh exit code 9
Package: No package
    font-adobe-dpi75.sh exit code 1
    font-alias.sh exit code 1
    font-bh-dpi75.sh exit code 1
    font-bh-lucidatypewriter-dpi75.sh exit code 1
    font-dec-misc.sh exit code 1
    font-misc-misc.sh exit code 1
    mined.sh exit code 1
    fontconfig.sh exit code 9
      libtool实际上安装完成了,这里只是些字体相关的错误。不过这里选择的安装源也是有影响的,一开始使用源:http://www.cygwin.cn/pub,之后换成源:http://www.xmission.com,提示错误就少了一个:
Package: No package
    font-adobe-dpi75.sh exit code 1
    font-alias.sh exit code 1
    font-bh-dpi75.sh exit code 1
    font-bh-lucidatypewriter-dpi75.sh exit code 1
    font-dec-misc.sh exit code 1
    font-misc-misc.sh exit code 1
    mined.sh exit code 1
    fontconfig.sh exit code 9
      安装好libtool后,继续编译,错误依旧。去找下config.sub文件,目录中竟然没有,看下check_oracle_health-1.6.4.tar.gz文件,里面确实是有这个文件的。于是我又进行一次万恶的操作,用winrar打开check_oracle_health-1.6.4.tar.gz文件,并将里面的文件拉出来将原来的文件覆盖掉,这次./configure通过了,而make all的时候又出错了:
Making all in plugins-scripts make: Fatal error: Don’t know how to make target Nagios/DBD/Oracle/Server/Instance/SGA/SharedPool/DictionaryCache.pm' Current working directory /tmp/check_oracle_health-1.6.4/plugins-scripts......
      对于这个错误,有人这样描述:
Looks like your tar-command does not support filenames which exceed 100 characters (i think SuSE has such a tar). Instead of the tar.gz please download the shar.gz and unpack it with “cat check_oracle_health-xxx.shar.gz | gzip -d | sh”
      这个解释看起来不靠谱,我不是用的SUSE,这时有高人指点,不要用winrar,在cygwin中使用tar命令解压:tar zxvf check_oracle_health-1.6.4.tar.gz,然后再进行安装,一切问题迎刃而解。

另外补充一些:
linux中的安装包优先下.tar.bz2,其次是tar.gz,不得已才用zip,因为其中包含了文件权限等很多信息。
除了cygwin,还有MinGW,如果要通过源码编译安装,MinGW还要安装一个MSYS才可以。
  评论这张
 
阅读(1049)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017