我正试图在运行 Ubuntu 15.10 x64 的服务器上安装 vapor (https://github.com/vapor/vapor) 工具箱。
从 "swift build" 命令中出现以下错误。
/swift-3.0/usr/bin/swift-build: error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory
这是一个curl问题吗?如何解决这个错误?
详情:
我正在按照这里描述的步骤操作: https://vapor.github.io/documentation/getting-started/install-toolbox.html
已安装Swift 3.0:
user@server:~$ swift --version
Swift version 3.0 (swift-3.0-RELEASE)
Target: x86_64-unknown-linux-gnu
安装工具箱:
user@server:~$ curl -sL toolbox.vapor.sh | bash
✅ Compatible
Downloading...
Compiling...
/swift-3.0/usr/bin/swift-build: error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory
Installing...
bash: line 22: .build/release/Executable: No such file or directory
Use vapor --help and vapor <command> --help to learn more.
脚本的这一行导致了上述错误:swift build -c release > /dev/null;
swift build --help
会出现相同的错误:
user@server:~$ swift build --help
/swift-3.0/usr/bin/swift-build: error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory
蒸汽不存在:
user@server:~$ vapor --help
vapor: command not found
还有curl信息:
user@server:~$ sudo -i curl --version
curl 7.43.0 (x86_64-pc-linux-gnu) libcurl/7.43.0 GnuTLS/3.3.15 zlib/1.2.8 libidn/1.28 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets
使用sudo apt-get install curl
安装了curl,并且没有报告任何错误。
user@server:/usr/lib $ find . | grep curl
报告大约15个匹配项,但没有一个是确切的libcurl.so.4。最接近的匹配项是:
./x86_64-linux-gnu/libcurl-gnutls.so.4
./x86_64-linux-gnu/libcurl-gnutls.so.4.3.0
./x86_64-linux-gnu/libcurl-gnutls.so.3