快速业务通道

Linux configure关于交叉编译的参数设置

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-04
用CACHEFILE解决这个问题,还要谢谢ABSURD兄的文章给我的指导.
 
  我是这样解决的第一步:记录下错误的地方如:checking abstract socket namespace…… configure: error: cannot run test program while cross compiling
 
  注意到abstract socket namespace在configure中查找abstract socket可以看到类似这样的结构
 
  echo "$as_me:$LINENO: checking abstract socket namespace" >&5
 
  echo $ECHO_N "checking abstract socket namespace…… $ECHO_C" >&6
 
  if test "${ac_cv_have_abstract_sockets set}" = set; then
 
  echo $ECHO_N "(cached) $ECHO_C" >&6
 
  其中ac_cv_have_abstract_sockets是我们要查找的变量
 
  使用echo ac_cv_have_abstract_sockets=yes>arm-linux.cache
 
  然后
 
  ./configure ——host=arm-linux ——cache-file=arm-linux.cache
 
  K这样就搞定了
 
  另外:
 
  1:fedora 中 /sbin/init 3 关闭图形界面
 
  有些 configure 依赖lib 编译,并且需要pkg-config 支持,可能
 
  需要设定 PKG_CONFIG_PATH 环境变量, 此变量指向所依赖lib 的xxx.pc
 
  描述文件, xxx.pc描叙lib 的特性,如
 
  prefix=/develop/upnp/mips_libupnp
 
  exec_prefix=${prefix}
 
  libdir=${exec_prefix}/lib
 
  includedir=/develop/upnp/mips_libupnp/include
 
  Name: libupnp
 
  Description: Linux SDK for UPnP Devices
 
  Version: 1.6.3
 
  ibs: -L${libdir} -lupnp -lthreadutil -lixml
 
  Cflags: -pthread -I${includedir}/upnp
 
  2:configure 脚本判断lib 是否存在时是采用编译C 文件的方法,有时候交叉编译时
 
  可通过修改 configure文件通过测试,具体是添加 -I 或者-L 指明位置.
 
  有些通过 ——host 指定目标平台,——host=mipsel-linux (libupnp)
 
  有些通过 ——cross-prefix=mipsel-linux- ——cross-compile(ushare) 指定,
 
  具体可通过configure ——help/-h 查看
 

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号