参考: https://blog.byneil.com/windows-%E4%BB%A5%E5%8F%8A-xcode%E4%B8%8B%E7%BC%96%E8%AF%91%E8%B0%83%E8%AF%95-libcurl-%E6%BA%90%E7%A0%81/
一般libcurl是用makefile进行编译的,这里为了能用Xcode对libcurl进行编译需要用cmake生成Xcode工程
当然其中的一切有版本
一、需要先安装cmake
下载 cmake 源码, http://www.cmake.org/files/v3.1/cmake-3.1.0-rc1.tar.gz
然后解压, 进去:
命令: ./configure && make && make install
一切顺利的话,应该就能成功了。
二、进行文件初始化生成
下载curl源码 (http://curl.haxx.se/download.html) 我现在用的是7.52.1版本
进入curl的源码目录:
命令: ./configure --without-libssh2 --with-darwinssl
命令: make
说明一下, 我们这里指定了两个参数, 我们不需要 curl 支持 ssh, 所以把”–without-libssh2 ” 排除. 而且”–with-darwinssl” 指定使用 mac 上的 ssl 实现, 而不需要 openssl.
这样可以减少出错的可能性, 而且, 我们就需要 darwinssl.
三、使用 cnamke 逆向Xcode生成工程.
我们可以先尝试一下:
命令:
mkdir -p build/xcode
cd build/xcode
cmake ../../$CURL -G Xcode
打开工程
四: 进行工程正常编译调试
用Xcode打开工程 选择 curl进行编译
发现报错 编译报错
然后在 liburl/build/xcode 里执行:
sed -i "" "s/OTHER_LDFLAGS = "/OTHER_LDFLAGS = "-framework Cocoa -framework CoreFoundation -framework CoreServices -framework Security -fobjc-link-runtime -framework LDAP/" CURL.xcodeproj/project.pbxproj
发现仍然报错
解决办法 更改 libcurl 目录中的CMakeLists.txt 为我自己的CMakeLists.txt
附:CMakeLists.txt (见我的简书 或者参考文章中)
替换以后重新进入文件夹 liburl/build/xcode执行 命令 : cmake ../../$CURL -G Xcode
然后在执行:
sed -i "" "s/OTHER_LDFLAGS = "/OTHER_LDFLAGS = "-framework Cocoa -framework CoreFoundation -framework CoreServices -framework Security -fobjc-link-runtime -framework LDAP/" CURL.xcodeproj/project.pbxproj
到现在为止生成的Xcode工程 编译通过 不报错
//=======================================================================