我使用的是 OSX 10.9.5。我想使用比 OSX 捆绑版本更高版本的 CURL,但我不想删除 OSX 二进制文件以防万一,所以我想选择通过自制程序安装它。
我自己的路:
$ echo $PATH
/Users/Tom/.nvm/v0.10.33/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Users/Tom/.composer/vendor/bin:/usr/local/mysql/bin::~/Library/Trigger\ Toolkit:/usr/local/heroku/bin
如您所见,几乎位于我的节点路径后面/usr/local/bin
的前面。path
nvm
的结果$ brew install curl
:
Warning: curl-7.38.0 already installed
的结果$ curl
:
dyld: Library not loaded: /usr/local/lib/libcurl.4.dylib
Referenced from: /usr/local/bin/curl
Reason: Incompatible library version: curl requires version 8.0.0 or later, but libcurl.4.dylib provides version 7.0.0
[1] 6481 trace trap curl
我安装时做错了什么?为什么brew 没有包含所需的libcurl 版本?
答案1
提供了一种解决方案这里
这个想法是制作一个静态的curl 版本,然后将其粘贴到/usr/bin/ 或/usr/local/bin/ 中。简要地:
~$ xcode-select --install
- 下载最新版本卷曲。
cd 到该目录并运行
~$ ./configure --disable-shared --with-darwinssl --enable-threaded-resolver
~$ make -j `sysctl -n hw.逻辑cpu_max`
将编译后的curl(位于./src/curl)复制到/usr/bin/
笔记:在3中的make命令中,符号“`”确实是反引号,而不是单引号。
答案2
尝试运行rm /usr/local/Cellar/curl
然后重新安装。 (这将删除您的自制卷曲。)
当我测试安装的curl时,Homebrew这么说:
Mac OS X 已经提供了该软件,并行安装另一个版本可能会导致各种麻烦。
一般来说,这不会给您带来任何后果。如果您构建自己的软件并且需要此公式,则需要添加到构建变量中:
LDFLAGS: -L/usr/local/opt/curl/lib
CPPFLAGS: -I/usr/local/opt/curl/include