失败的交叉编译纪录

交叉编译自己并没有经验。于是 编译出来的各种库都不能用。但是记录以下失败信息,为下次做准备。

刚开始系统中对应的工具没有安装,因此安装如下。

首先,下载mac port

然后安装tesseract需要的工具如下

sudo apt-get install autoconf automake libtool

sudo apt-get install libpng12-dev

sudo apt-get install libjpeg62-dev

sudo apt-get install libtiff4-dev

sudo apt-get install zlib1g-dev

由于没有apt-get 通过port来安装

sudo port -v install automake +universal

sudo port -v install autoconf +universal

sudo port -v install libpng +universal

sudo port -v install libtool +universal

其他没有安装成功。

然后 编译 leptonica

./autogen.sh如果不执行这一句,则会


config.status: creating Makefile

config.status: error: cannot find input file: `api/Makefile.in'


./configure

make

sudo make install

sudo ldconfig //failed


然后同样安装tesseract


之后打算开始交叉编译。其实到这里 我已经出现了一个问题。当时没想到 安装之后 如果 不指定leptonica的库路径,那么编译tesseract时载入的库是从/usr/local/lib 中载入的。这是第一个隐患。

按照

 http://tinsuke.wordpress.com/2011/11/01/how-to-compile-and-use-tesseract-3-01-on-ios-sdk-5/#more-52

 http://www.devdiv.com/forum.php?mod=viewthread&tid=121509
http://knychardi.blogspot.com/2011/07/build-tesseract-ocr-with-iphone.html
http://www.cnblogs.com/xiaouisme/archive/2012/05/05/2485379.html

提供的脚本,然后可耻的一遍又一遍失败鸟。

第一次出现的问题呢,本机的Xcode 安装完 不是从Application里面启动,是类似虚拟光驱方式启动。要编译arm6(iphone1-3) arm7(iphone4 ipad) 的目标库,需要arm版本的gcc。本机自带是没有的,需要使用Xcode里面的。先把Xcode拷贝到Application中(也有好几个G)。i386是为模拟器准备的,如果只编译模拟器的库,那么本机的gcc就可以。,

然后我用了 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/ 中的gcc

也编译出了leptonica 不知道这里有没有什么问题,脚本里面用的都是/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin 中的编译器

脚本用llvm-g++ 和 llvm-gcc ,

LD很重要。设置成/usr/bin/ld configure不会报错,但是 编译出来的库 好像会有问题ld: symbol(s) not found for architecture armv7。但是ld如果设置为脚本中 则编译会说c编译器报错 或者c++编译器报错。

生成的tesseract库大小有问题。 最后也没解决。

回头从基础开始研究研究交叉编译吧。

将三个库合成一个库的过程,也存在问题。。。。ORZ 

如果不想每次去找共享资源,还是从头开始好好学习吧。~ 不然每次都这么折磨。肯定有好的方法的。




有个讨论页面 可做参考 记录如下 http://stackoverflow.com/questions/9039554/using-libcurl-on-ios-5-as-an-alternative-to-nsurlconnection






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值