2016-03-15 54 views
1

我有一个Swift包(you can download here, its a pure Swift markdown implementation),它有两个模块,一个是库,另一个是可执行文件。运行swift build将正确找出建库,然后生成可执行文件,但是当它尝试与错误内部包装模块依赖

Undefined symbols for architecture x86_64: 
"__TFE9SmarkDownSSg8markdownSS", referenced from: 
    _main in main.swift.o 
ld: symbol(s) not found for architecture x86_64 

当然链接引用的符号是方法(或在这种情况下属性)我失败试图使用(对String的扩展)。

我想问题是:是否有任何具体的,必须完成模块一个包,以确保它们连接在一起?

+1

它适用于我,我没有看到任何错误。你能否提供更详细的步骤? –

+0

1-确保您使用https://swift.org/download/#latest-development-snapshots 的最新快照2 - 确保您正确设置路径。按照从 步骤https://swift.org/download/#apple-platforms https://github.com/apple/swift-package-manager#installing –

+0

我有最新的快照...也挣扎与我需要更新git吗? – rougeExciter

回答

1

我检查过你的项目,它为我编译。 这里有几件事情要检查:

按照从Swift.or
2.设置你的PATH安装说明。

export PATH=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin:"${PATH}" 
export TOOLCHAINS=swift 
export SWIFT_EXEC=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin/swiftc 

请确保您使用的git 2.0或更高版本。

git --version 
+0

这是由XCode安装的SWIFT_EXEC和git 1.8.4问题。感谢您的帮助! – rougeExciter