这里以libcurl 为例:
1.首先需要下载 libcurl http://curl.haxx.se/download.html .解压...
2.打开mac上的 terminal :切换到 解压的libcurl 的目录下...
3.编译配置:
export CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1
export CFLAGS="-isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk"
export LDFLAGS="-isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -Wl,-syslibroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk"
export CPP=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/cpp
./configure --disable-shared --without-ssl --without-libssh2 --without-ca-bundle --without-ldap --disable-ldap --host=arm-apple-darwin10
以上export的版本为本机安装的 xcode sdk版本 和 gcc版本....使用时 改为自己机子安装的... 路径也可能需要变...
通过cd 到以上路径 能找到内容,即可。
配置结束后 可以看到 :Protoclols: ............TELNET TFTP
4. 编译libcurl
(1) 打开Xcode选择: File->New Project->iOS->Library->Cocoa Touch Static Library
添加文件:Add->Existing Files (选择curl中 "src"文件夹),Add->Existing Files (选择curl中 "lib"文件夹)
(2)选中工程,打开“build”选项,查找Oher_c_flags 设置下面信息
-DHAVE_CONFIG_H -I/ca/dev/code/lib/curl/curl-latest/include -I/ca/dev/code/lib/curl/curl-latest/lib
注: /ca/dev/code/lib/curl/curl-latest就是刚才解压curl源代码的路径,在本机中是 -DHAVE_CONFIG_H -I/Users/rosa/curl-7.21.7/include -I/Users/rosa/curl-7.21.7/lib
5. 利用 lipo 制作通用版本 静态库
由于libcurl在device和simulator上要选择不同的版本,因此在实际使用的时候切换起来很不方便,可以在终端上使用mac os 自带的lipo工具制作为通用版本,通用版本的大小其实就是两个版本加起来的和。命令行如下:
lipo -create /b-debug/libcurl.a /a-debug/libcurl.a -output libcurl-debug.a
分享到:
相关推荐
这是一个xcode静态库编译方法的文档 欢迎大家下载
Xcode生成动态库和静态库的方法,亲测可用,最后有将模拟仿真结果与真机测试结果合成的代码,合并后,放入工程目录,测试使用完全没有问题
我这个文档的静态库的开发是基于Xcode4.2和iOS SDK5.0编写的。Xcode4跟之前的Xcode3还是有不少的差别的。下面就简单写一个静态库和一个调用静态库的例子。静态库的编写:1.静态库工程的建立: Xcode New一个新的...
ffmpeg 2.3.1 在xcode 5 下面的静态库编译 1. 解压本压给包 2. 将解压后的 build-ffmpeg.sh ffmpeg-2.3.1.tar.bz2 拷备到os的一个目录, 如:xxx/ffmpeg 3. 修改 build-ffmpeg.sh权限, chmod 777 build-ffmpeg.sh...
xcode 创建静态库和动态库 1、linux中静态库和动态库区别: 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行。库分静态库和动态库两种。 静态库:这类库的名字一般是libxxx.a;利用静态函数库编译...
FFmpeg 2.6.1 编译的静态库,在Xcode6 iOS8上编译, 已整合(arm64 armv7s armv7 x86_64 i386)。
适用于iOS开发h264解码,在Xcode7环境下完美运行。包含了armv7,armv7s,arm64,i386,x86_64五个.a的合并,当前情况下所有模拟器和真机都适用(真机测试为4s和6) 折腾了三天弄好的,希望可以帮到有需要解码h264的朋友...
FFmpeg 2.5.3 编译的静态库,在Xcode6 iOS8上编译, 已整合(arm64 armv7s armv7 x86_64 i386)。
简单的bash脚本可为多种体系结构(即模拟器和设备)编译静态库。 用法 只需使用.xcodeproj将build.sh文件移动到目录中,然后在文件顶部调整参数即可。 将所有必需的体系结构添加到您的xcode项目中(xcode->构建设置...
分别编译的静态库可以lipo create armv7 lib libswscale a armv7s lib libswscale a arm64 lib libswscale a output libswscale a 其他 a文件同样合并 还有 sh文件中得DEST是存放三个平台下编译的库文件 ffmpeg库...
国密加密算法iOS静态库,支持国密加密、解密、ssl通信,包含 libcrypto.a、libssl.a、头文件,支持bitcode。
作者smallmuou,源码xcode-configure,有时候,我们希望通过命令行来编译xcode工程,我们可以直接用xcodebuild来编译,之后再到编译路径下拷贝打包成ipa或者是要包含各种cpu架构的静态库或framework,就显得非常非常...
在日常项目开发中,不论是为了两个公司项目上的业务交流还是为了减少项目的编译时间,有的时候我们会把项目中的私密内容打包成静态库,或者是把项目中变动较少一部分打包成静态库以便提高编译效率,那么下面我们就来学习...
有时候,我们希望通过命令行来编译xcode工程,我们可以直接用xcodebuild来编译,之后再到编译路径下拷贝打包成ipa或者是要包含各种cpu架构的静态库或framework,就显得非常非常麻烦,有没有一步到位的方法呢?...
从Xcode 11.4和Swift 5.2开始,由于以下原因,您可能会遇到有关SPM和编译错误的麻烦: 库代码重复: Swift软件包产品“您的库”通过“您的项目”和“您的小部件”链接为静态库。这将导致库代码重复。 使用动态库时,...
最近升级了系统到Mac OS X 10.10 并且更新了XCode6.1和iOS 8.1之前app用到的libmp3lame.a静态库,也要支持64位的模拟器(x86_64)和64位的真机(arm64)指令集。需要重新编译查阅了下资料,按照如下步骤,并做了些注释...
共享的 java 文件被添加到 Xcode 中进行跟踪,它们生成的代码被编译到一个静态库中,并关闭 ARC(自动引用计数)。 先决条件 本指南假设如下。 您已经在某处安装了 J2ObjC。 如果你还没有,这里是。 示例项目假定...
最新编译的支持iOS平台的openssl静态库,支持arm v7,armv7s,arm64 Xcode7最新编译的,支持到7.0以上系统
xcframeworks回购这是在同一Xcode项目中创建和集成xcframeworks及其合作社与静态库和Swift软件包的演示。目录简介:新型.xcframework格式前提条件Xcode 11及以上Swift 5.1及更高版本在Xcode的帐户首选项中设置的...
最新版live555 如果要编译真机的静态库,直接执行config.iphoneos即可,已经修改好配置。适合配置mac10.7.3 xcode4.3 sdk 5.1 以上的版本 直接终端转移到live目录下执行config.iphoneos