编译静态库遇到的一些问题speex,opus
来源:互联网 发布:北京知果科技怎么样 编辑:程序博客网 时间:2024/05/24 13:27
最近在做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,opus
- speex和opus的复用形式
- speex编译静态库for iOS
- ios的opus编译
- 静态库编译和连接遇到的奇怪问题
- 静态库编译和连接遇到的奇怪问题
- linux 编译静态库时遇到的问题
- qt creator编译opus库
- C++编译spidermonkey遇到的一些问题
- Windows服务编译遇到的一些问题
- USB驱动编译遇到的一些问题
- 编译teamtalk遇到的一些问题
- CentOs 编译php 遇到的一些问题
- ORB-SLAM2编译遇到的一些问题
- CentOs 编译php 遇到的一些问题
- 编译ORBSLAM2中遇到的一些问题
- 关于 J2Objc 编译静态库的一些问题记录
- Qt静态编译的一些问题
- c++文件打包工具实现
- 接入网(固网)
- 在删除表时出现错误:递归sql级别1出现错误 ,实际返回的行数超出请求的行数
- 6 Things to Check if your Web Part is Not Working in Kentico CMS
- unity实现鼠标拖拽缩放功能代码
- 编译静态库遇到的一些问题speex,opus
- 关于C#中WebClient调用REST服务,缓存问题的解决方案
- 用户指南:让私人电脑成K歌机 享受快感【386w】
- 一个完整的BDC程序,仅供参考!(包括各种参数的配置)
- apk签名 及 应用程序的“包名”问题
- OAuth接口说明及OAuth 核心1.0 中文翻译版
- [深入理解计算机系统]数据储存-大小端法与补码
- SPOJ:665 String it out
- 执行操作“sqlOpenResult”(状态为“-28”)时出错。