swift - 如何使用xcrun编译到AppleTV?

标签 swift dylib mach-o xcrun

我正在使用 xcrun 编译一个我想在 AppleTV 应用程序中使用的动态库。

使用此命令,我可以编译我的 dylib 并在 OS X 中使用:

➜  logger git:(master) ✗ ls
main.swift
➜  logger git:(master) ✗ xcrun swiftc -emit-library main.swift
➜  logger git:(master) ✗ ls
libmain.dylib main.swift
➜  logger git:(master) ✗ file libmain.dylib 
libmain.dylib: Mach-O 64-bit dynamically linked shared library x86_64

但是,我无法在 AppleTV 模拟器中使用它。 dlopen 命令返回 nil

然后,我尝试了一些参数,如下所示,但无法正常工作

➜  logger git:(master) ✗ xcrun swiftc -emit-library -sdk $(xcrun --show-sdk-path --sdk appletvsimulator10.1) main.swift
<unknown>:0: warning: using sysroot for 'AppleTVSimulator' but targeting 'MacOSX'
ld: warning: URGENT: building for OSX, but linking against dylib (/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator10.1.sdk/System/Library/Frameworks//CoreFoundation.framework/CoreFoundation) built for tvOS. Note: This will be an error in the future.
ld: warning: URGENT: building for OSX, but linking against dylib (/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator10.1.sdk/usr/lib/libobjc.dylib) built for tvOS. Note: This will be an error in the future.
ld: warning: URGENT: building for OSX, but linking against dylib (/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator10.1.sdk/usr/lib/libSystem.dylib) built for tvOS. Note: This will be an error in the future.

如何将我的 Swift 代码编译为动态库以在 AppleTV 中使用?

最佳答案

对于模拟器:

xcrun swiftc -emit-library -sdk $(xcrun --show-sdk-path --sdk appletvsimulator10.2) main.swift

对于物理设备:

xcrun swiftc -emit-library -sdk $(xcrun --show-sdk-path --sdk appletvos10.2) main.swift

关于swift - 如何使用xcrun编译到AppleTV?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43018954/

相关文章:

ios - 内存随着自定义 View 不断增加

macos - 最小 Mach-o 64 二进制

ios - 使用 drawGlossAndGradient() 的 Mach-O 错误

c++ - 如何更改 c++ 文件的 mach-o 可执行文件的入口点?

iphone - 有 AVMutableComposition 视频创建问题

ios - 当文本字段等于 nil 时隐藏按钮,当不为零时显示按钮

ios - 如何快速复制 float 缓冲区?

ios - 子类化 NSManagedObject 子类

java - MAC OSX-Write Xcode .Dylib 用于 JNA (Java Native Access) -JAVA

xcode - 从苹果的源代码构建 DYLD