编译静态库遇到的一些问题speex,opus
2013-08-09 16:37
961 查看
最近在做ios语音聊天研究,语音压缩需要用到开源库有speex( http://www.speex.org/ ),opus ( http://opus-codec.org/ ) 等
关于speex的中文文档还是比较多的,这里有篇介绍编译speex的文章
http://www.cocoachina.com/applenews/devnews/2012/1105/5029.html
但是speex的官方网站上很明确的说不再更新,建议开发者转到opus
那就开始研究opus吧,首先需要编译成静态库
之前没有编译静态库的经验,在linux上开发C,C++的同学应该有丰富的编译经验。
首次编译opus还是遇到的不少问题,照着上面介绍编译speex的教程
1.首先编译支持i386的,编译成功了。
2.然后编译支持armv6的,最后失败 configure: error: C compiler cannot create executables,并始终没找到解决方案,也耽误了大量时间。
在把百度,谷歌大神问了一遍之后还是没能够找出解决方案,难道我的opus研究到此为止,就这样悲剧收场?!
个人猜想是xcode4.6.2不再支持armv6了,以后证实了会更新博文。
3.算了先不管armv6,这次来编译支持armv7的,竟然神奇的成功了,别高兴太早。
4.然后开始编译支持armv7s的, 一串configure命令 开始编译->make->make install ->make clean一路下来没有报错,并且得到了libopus.a文件,但是运行lipo
-info libopus.a来看静态库文件支持的架构,这一看不要紧,
竟然输出的是 Non-fat file: libopus.a is architecture: cputype 12 cpusubtype 11
。。。。。为什不是armv7s 而是cputype
12 cpusubtype 11 ,难道又有问题?
5.午后犯困的我又是百度又是谷歌 迷迷糊糊中查到编译对armv7s的支持时他就是cputype 12 cpusubtype 11
6.嗯 且信他一次,用liop命令把三个分别支持不同架构的.a文件合并成一个.a文件
lipo -create armv7/lib/libopus.a armv7s/lib/libopus.ai386/lib/libopus.a -output
libopus.a
7.把新的libopus.a文件和头文件拖到xcode(我的是4.6.2)工程里,写两行代码调用下函数,编译运行模拟器,真机都OK
关于speex的中文文档还是比较多的,这里有篇介绍编译speex的文章
http://www.cocoachina.com/applenews/devnews/2012/1105/5029.html
但是speex的官方网站上很明确的说不再更新,建议开发者转到opus
那就开始研究opus吧,首先需要编译成静态库
之前没有编译静态库的经验,在linux上开发C,C++的同学应该有丰富的编译经验。
首次编译opus还是遇到的不少问题,照着上面介绍编译speex的教程
1.首先编译支持i386的,编译成功了。
2.然后编译支持armv6的,最后失败 configure: error: C compiler cannot create executables,并始终没找到解决方案,也耽误了大量时间。
在把百度,谷歌大神问了一遍之后还是没能够找出解决方案,难道我的opus研究到此为止,就这样悲剧收场?!
个人猜想是xcode4.6.2不再支持armv6了,以后证实了会更新博文。
3.算了先不管armv6,这次来编译支持armv7的,竟然神奇的成功了,别高兴太早。
4.然后开始编译支持armv7s的, 一串configure命令 开始编译->make->make install ->make clean一路下来没有报错,并且得到了libopus.a文件,但是运行lipo
-info libopus.a来看静态库文件支持的架构,这一看不要紧,
竟然输出的是 Non-fat file: libopus.a is architecture: cputype 12 cpusubtype 11
。。。。。为什不是armv7s 而是cputype
12 cpusubtype 11 ,难道又有问题?
5.午后犯困的我又是百度又是谷歌 迷迷糊糊中查到编译对armv7s的支持时他就是cputype 12 cpusubtype 11
6.嗯 且信他一次,用liop命令把三个分别支持不同架构的.a文件合并成一个.a文件
lipo -create armv7/lib/libopus.a armv7s/lib/libopus.ai386/lib/libopus.a -output
libopus.a
7.把新的libopus.a文件和头文件拖到xcode(我的是4.6.2)工程里,写两行代码调用下函数,编译运行模拟器,真机都OK
相关文章推荐
- 编译lua5.3扩展.so文件时遇到的一些问题总结
- 编译Cocos2D-x权威指南 喵星战争遇到的一些问题
- 编译kernel源代码遇到的一些小问题集合
- (补充)点云压缩入门(一):pcc工程的编译所遇到的一些问题
- 项目中遇到的问题-2:编译第三方静态库报错、查看静态库的类型、绘制圆形
- faster-rcnn在编译时遇到的一些问题
- ubuntu14.04编译yael v438 遇到的一些问题
- CentOs 编译php 遇到的一些问题
- hive 1.x 版本 编译 安装配置及遇到的一些问题
- iOS真机编译遇到的一些问题及解决方法
- ubuntu上编译安装apache步骤、遇到的一些问题解法
- Windows服务编译遇到的一些问题
- Ionic Android编译打包过程中遇到的一些问题及解决方案(ionic cordova build android)
- Mac 下编译 PHP 扩展遇到的一些问题
- android 源码编译遇到得一些问题
- x264和FFMPEG 编译后遇到的一些问题:UINT64_C,
- 关于我遇到的java中编译没错运行出错的一些问题(不定期更新)
- VS2012 编译libmseed源码生成dll文件并调用中遇到的一些问题
- 关于内核编译遇到的一些小问题
- C++虚函数声明和定义以及g++编译遇到的一些问题