Linux中的Swift:使用未解析的标识符’dispatch_async’
发布时间:2020-12-14 01:45:38 所属栏目:Linux 来源:网络整理
导读:我编译了libdispatch. 这段代码有效: import Dispatchvar lockQueue = dispatch_queue_create("com.test.async",nil); 但是如果我把这段代码放到结束文件中: dispatch_async(lockQueue) { print("test1");} 我收到一个错误: use of unresolved identifier
我编译了libdispatch.
这段代码有效: import Dispatch var lockQueue = dispatch_queue_create("com.test.async",nil); 但是如果我把这段代码放到结束文件中: dispatch_async(lockQueue) { print("test1"); } 我收到一个错误:
解决方法
正如我在上面评论的那样,它似乎是
a current limitation with the Swift Package Manager.它目前不支持添加适当的编译时选项,例如支持块作为GCD函数输入所需的选项(-Xcc -fblocks).
在此期间,您可以避免使用Swift包管理器并使用swiftc直接编译文件,并使用适当的选项.谢夫勒在their test repository提供了一个例子: swiftc -v -o gcd4 Sources/main.swift -I .build/debug -j8 -Onone -g -Xcc -fblocks -Xcc -F-module-map=Packages/CDispatch-1.0.0/module.modulemap -I Packages/CDispatch-1.0.0 -I /usr/local/include -I选项将为libdispatch提供模块映射,因此请调整它们以匹配实际放置这些系统模块目录的位置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- linux – 如何删除发送到特定域的Postfix队列消息
- Python – 制作脚本来操纵Windows文件路径但在Linux上运行
- linux(centOS7)的基本操作(四) 定时任务——crontab
- .net – 可以在Linux或Mac上的Mono上安装Sitecore CMS吗?
- PAT甲级——A1040 Longest Symmetric String
- Linux安装JDK
- linux – 在smbclient放置期间的进度条
- LINUX实战:php用户登录之cookie信息安全分析
- Rsync和“ssh_exchange_identification:连接由远程主机关闭
- linux – 什么是gssapi-with-mic?