2017-08-23 26 views
2

我想要启动一个Swift Vapor项目。遵循指南here,似乎Homebrew是唯一的选择。我已经有了MacPorts,并且在很多方面喜欢Homebrew。不幸的是,没有Vapor的端口,所以我去了Vapor人员描述的SPM安装here。我以前在Kitura取得过成功,所以我想为什么不用Vapor。那么,当你去建立你的项目,你会得到在macOS上安装蒸气而不需要自制软件

$ swift build 

[... build stuff ...] 

note: you may be able to install ctls using your system-packager: 

    brew install ctls 

[... more build stuff ...] 

<module-includes>:1:9: note: in file included from <module-includes>:1: 
#import "shim.h" 
    ^
[... more like that ...] 

    /Users/morpheu5/web/vizex/api/.build/checkouts/crypto.git-7980259129511365902/Sources/Crypto/Cipher/Cipher+Method.swift:1:8: error: could not build Objective-C module 'CTLS' 
import CTLS 
    ^
<unknown>:0: error: build had 1 command failures 
error: exit(1):/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-build-tool -f /Users/morpheu5/web/vizex/api/.build/debug.yaml 

显然,你真的需要这种ctls包,并获得它的唯一的方式似乎是通过自制/ TAP。

我真的不想要或不需要自制软件,那么我该如何做到这一点?我真的很想给Vapor一个尝试。

+0

AFAIK,Vapor通过Swift Package Manager安装。虽然命令行工具非常方便,但它们不是强制性的。 – CloakedEddy

回答

3

强制性1:安装Homebrew是最简单的方法。如果你决定你不想要自制软件,它会非常整洁地卸载。

强制性2:使用Linux VM是第二种最简单的方法。

但是,为了回答你的问题,然后手动安装CTLS

  1. 确保您有库LibreSSL或安装OpenSSL(使用MacPorts的,大概)

  2. 下载的CTLS最新release

  3. 从发布存档中,将macos.pc重命名为ctls.pc,然后使用文本编辑器对其进行编辑。将路径更改为指向您的LibreSSL/OpenSSL安装。

  4. 将编辑的ctls.pc移动到您的$PKG_CONFIG_PATH

我已经测试了这个和它的作品对我来说,与我使用自制安装LibreSSL所以我不知道在哪里的MacPorts将把它的警告。

+0

我自己唯一的问题是,我仍然喜欢MacPorts,我讨厌他们踩在对方的脚趾上。感谢您的详细解答:) – Morpheu5