首页 > 学院 > 开发设计 > 正文

Linux 源码编译、安装swift和lldb

2019-11-08 02:51:22
字体:
来源:转载
供稿:网友

linux 源码编译、安装swift和lldb

参考链接:

http://www.swiftPRogrammer.info/swift_centos_1.html

http://www.th7.cn/Program/IOS/201603/772422.shtml

http://www.linuxidc.com/Linux/2016-01/127232.htm

http://os.51cto.com/art/201601/503260.htm

 

       这里是以Ubuntu16.04版本为例进行编译安装的。

目前官方已经Ubuntu14.04和16.04的Release版本。如果想直接使用Swift的发行版的话,在官网下载、解压即可得到可执行文件,设置环境变量即可使用。

       下面是一个在Ubuntu14.04下直接安装Release版swift的简单教程:

http://os.51cto.com/art/201601/503260.htm

 

        中提到使用如下命令进行编译

utils/build-script -l -b -p --xctest --foundation -R 

 

       但我使用以上命令后出现了如下错误:

TestFoundation/TestNSString.swift:13:8: error: no such module 'XCTest'

import XCTest

       ^

ninja: build stopped: subcommand failed.

 

        后来发现是XCode未进行编译,所有最终使用如下的命令编译通过。

utils/build-script -l -b -p --xctest --foundation -R

 

        编译完成后,输入如下命令,检查lldb是否编译成功。

../build/Ninja-ReleaseAssert/lldb-linux-x86_64/bin/lldb –version

 

        如果出现以下结果,则说明已经成功。

 

 

⑹Linux swift不支持REPL交换式命令行

         Swift原则上是可以像python那样实现命令行的交换式输入的。但当我们输入

../build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift

    

        会出现如下的错误,说明不支持REPL

LLVM ERROR: Compiler-internal integrated REPL unimplemented for this platform; use the LLDB-enhanced REPL instead.

 

        该问题我目前正在研究。可能是因为编译器目前对linux的支持还不够完善造成的。

 

        在编译期间如果出现库找不到的情况,请务必检查是否有依赖包少安装了。

        编译swift一定要查看各自README.md和官网的帮助手册。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表