首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用“`xcodebuild`”命令行构建催化剂/UIKit for Mac?

使用“`xcodebuild`”命令行构建催化剂/UIKit for Mac?
EN

Stack Overflow用户
提问于 2019-07-10 20:57:39
回答 3查看 11.7K关注 0票数 8

我在任何地方都看不到这个文档--有没有人知道我们如何使用xcodebuild来为Mac (即催化剂)构建一个UIKIt项目?

您可以指定"-sdk iphoneos“与"-sdk iphone仿真器”在这两个目标之间切换,但是"-sdk uikitformac“似乎不起作用("SDK”),尽管Xcode本身使用该术语(例如,它构建到一个"Debug-uikitformac“文件夹,等等)。我还尝试了不同的SDK值,这些值可能是有意义的(比如"-sdk macabi"),但没有效果。

有什么建议吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-11-05 02:42:05

尝试:

代码语言:javascript
复制
xcodebuild -configuration "Debug" ARCHS="x86_64h" \
  -destination 'platform=macOS,variant=Mac Catalyst' \
  -project "MyApp.xcodeproj"

(请注意架构上的额外“h”)

票数 9
EN

Stack Overflow用户

发布于 2019-08-07 21:21:53

将脚本文件添加到项目文件夹中:

代码语言:javascript
复制
SCHEME=TestFramework \
ARCHS=~/Documents/Archives \

SCHEME是Xcode中构建方案的名称。

让我们构建macCatalyst存档:

代码语言:javascript
复制
#----- Make macCatalyst archive
xcodebuild archive \
-scheme $SCHEME \
-archivePath $ARCHS/macCatalyst.xcarchive \
-sdk macosx \
SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES SUPPORTS_MACCATALYST=YES

此外,您还可以添加其他平台,如iOS设备或模拟器:

代码语言:javascript
复制
#----- Make iOS Simulator archive
xcodebuild archive \
-scheme $SCHEME \
-archivePath $ARCHS/simulator.xcarchive \
-sdk iphonesimulator \
SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES

#----- Make iOS device archive
xcodebuild archive \
-scheme $SCHEME \
-archivePath $ARCHS/iosdevice.xcarchive \
-sdk iphoneos \
SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES

要在XCFramework中包含所有内容,请使用:

代码语言:javascript
复制
#----- Make XCFramework
xcodebuild -create-xcframework \
-framework $ARCHS/simulator.xcarchive/Products/Library/Frameworks/$SCHEME.framework \
-framework $ARCHS/iosdevice.xcarchive/Products/Library/Frameworks/$SCHEME.framework \
-framework $ARCHS/macCatalyst.xcarchive/Products/Library/Frameworks/$SCHEME.framework \
-output ~/Documents/$SCHEME.xcframework

运行后,您将在文档文件夹中找到您的XCFramework。

票数 19
EN

Stack Overflow用户

发布于 2019-07-30 09:14:36

我用它构建了一个包含Mac催化剂框架的XCFramework

XCFramework和Mac催化剂

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56978529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档