6
Bir bilgisayarda Swift yüklü olmayan bir derlenmiş Swift komut dosyasını çalıştırmak istiyorum. Ancak varsayılan olarak Swift Derleyici dinamik olarak bağlantılı kitaplıklar kullanır. Bu kütüphaneleri statik olarak eklemek mümkün mü? -Xswiftc
için, swift build
içinSabit Swift çekirdek kitaplığıyla Swift komut dosyasını derleme
swiftc -static-stdlib helloworld.swift
geçmek:
[email protected]:~# docker run -it swiftdocker/swift
[email protected]:/# swift --version
Swift version 3.0-dev (LLVM dffa09ffd8, Clang 9f0d189820, Swift 1c720b8f84)
Target: x86_64-unknown-linux-gnu
[email protected]:/# echo 'print("Hello, world")' > helloworld.swift
[email protected]:/# swiftc helloworld.swift
[email protected]:/# ./helloworld
Hello, world
[email protected]:/# exit
exit
[email protected]:~# docker cp 16974ad4edb1:/helloworld .
[email protected]:~# file helloworld
helloworld: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=c4d42f6185b3d53ecf2dfb0c386263c17cb34675, not stripped
[email protected]:~# ./helloworld
./helloworld: error while loading shared libraries: libswiftCore.so: cannot open shared object file: No such file or directory
Bu bayrak (https://github.com/apple/swift/commit/d7f4d4c12beb0159dc7c537bbe846aa9e743900c), yani değil [GELİŞİM-SNAPSHOT-2016/05/09-a sadece bulabilirsiniz] dikkati çekiyor önceki 3.0 önizleme veya 2.x BIRAKMA. – sas
Beğenilen @sas zaten, bu hızlı 2.3 toolchain :(çalışmıyor – Ben