目标是在Raspberry Pi 3上运行swift和libDispatch。
我所处的位置:我试图编译SR-397 (https://bugs.swift.org/browse/SR-397) --这是一个最小的Swift libDispatch示例。此SR的项目位于此处:https://github.com/sheffler/gcd4和此处:https://github.com/sheffler/CDispatch
当我尝试编译gcd4项目时,我得到这个错误:“错误:不再支持空的清单文件。使用swift package init自动生成。“我假设错误消息是由于空的Package.swift文件造成的,所以我将Sheffler CDispatch项目复制到https://github.com/tree700/CDispatch并添加了一个Package.swift文件。我仍然会遇到同样的错误,并且还不能克服它。
作为背景,我从https://github.com/uraimo/buildSwiftOnARM下载了一个预编译的SWIFT3.1.1,并在我的系统上安装了包和依赖包。swift编译器和Swift包管理器工作正常,
我很乐意让它运行起来,我在OS上使用Dispatch,它让并发变得轻而易举。谢谢
发布于 2018-06-04 01:49:46
答案很简单...所需的额外信息在相关的博客中。要获取并安装Swift 3.1.1,请访问https://www.uraimo.com/2017/09/06/A-small-update-on-Swift-for-raspberry-pi-zero-1-2-3/,它说要这样做...
sudo apt-get install git cmake ninja-build clang-3.8 python uuid-dev libicu-dev icu-devtools libbsd-dev libedit-dev libxml2-dev libsqlite3-dev swig libpython-dev libncurses5-dev pkg-config libblocksruntime-dev libcurl4-openssl-dev autoconf libtool systemtap-sdt-dev
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-3.8 100
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-3.8 100在此之后,通常的过程是解压缩压缩的项目文件并将usr/bin目录添加到路径中(或者从usr/bin内部运行swift、swift等)
注意:我还必须安装包libpthread-workqueue-dev。如果在Raspbian上运行,则需要升级才能进行扩展。
-顺便说一下,我在使用Raspberry 3时发布了SO问题。事实上,当我开始工作时,我正在使用早期的Pi模型B。Pi 3很快也会有Swift。下面是一个简单的Swift程序,用来测试test分派:
import Foundation
import Dispatch
let queue = DispatchQueue(label: "queueName")
let workItem = DispatchWorkItem(qos: .userInitiated, flags: .assignCurrentContext) {
print("Hello")
}
queue.async(execute: workItem)
DispatchQueue.main.async {
print("Hello2")
}
dispatchMain()https://stackoverflow.com/questions/50423966
复制相似问题