xcode build failed打包时候怎么设置project和targert的buildsettings

--源文:/library/ios/featuredarticles/XcodeConcepts/Concept-Targets.html
------------------Target------------------
& & & & & &一个Target确定了一个product to build,包括一些instruction(怎么从一个project或者workspace的一堆文件导出一个产品)。一个Target对应一个product,它管理着一个product的build system的“输入”(一堆源文件和一些处理这些源文件的instruction)。一个project可以包含多个target,每一个targe生成一个product。
& & & & & & 构建一个product的instruction表现形式是build settings and build phases(可以在Xcode Project &editor里面查看、编辑)。一个Target的build settings 继承project的build settings,但是重写覆盖project setting。同一时间里只有一个active
Target ,由Xcode Scheme指定。
& 一个Target和它的product可以和其他Target联系,如果一个target build需要另一个target的“输出”,可以说成第一个target依赖第二个。如果这俩个target在同一个workspace,Xcode会发现他们的依赖关系,从而build the products按照特定的顺序。这样的关系被称为“&implicit dependency.” 你也可以为俩个targets指定明确的target
依赖关系在build setting里面。例如,你可能build一个library和一个链接这个library的application(同一个workspace)。Xcode可以发现这种关系并且自动build这个library first。然而,你如果要去链接library的某个版本而不是one built in the workspace,你可以在build settings里创建一个确定的依赖关系,它将会覆盖implicit dependency。
------------------Project------------------
& & & & &一个project是所有文件、资源、信息/配置的repository。一个project包含所有build your products所需的内容并且维护他们之间关系。它可以包含多个targets。一个project为所有的target定义默认的build setting(每一个target可以自定义它们的build setting,这些自定义的setting会覆盖project默认的build setting)。&
& & & & &一个project包含如下信息:
--相关源文件:1. 源代码,.h和.m; &2. library和frameworks(内部和外部) 3. 资源文件 & 4.IB 文件
--在structure navigator组织source files的Groups;
--Project-level &build configuration,可以有多个,例如debug和release buid setting;
--Target:即,相应的products、source files、build configuration(包括dependencies on other targets and other setting,project-level setting会被用到当&targets’ build configurations do not override them);
--用来debug和test程序的可执行环境,包括:What executable to launch when you run or debug from Xcode;命令行参数to be passed to the executable, if any;Environmental variables to be set when the program runs, if any。
& & & & & 一个project可以单独存在,也可以包含在一个workspace里。
& & & & &使用Xcode scheme去指定哪个target,building configuration,executable configuration是active(当前)的。
------------------Build Setting------------------
& & & & &a&build Setting是一个变量,包含着怎么build product的处理信息。例如,Xcode传给编译器的选项。 &&
& & & & &build settings有project level和target level俩中级别。project-level中的build setting适用项目中所有的targets,只要该build setting没有被相应的target重写。
& & & & &每一个target管理着build one product的source files。一个build 设置包含一系列build 特定product 的build settings。例如,通常有debug &和release俩中分开的build 设置。
& & & & &一个build setting在Xcode中的包含俩部分:setting title 和 definition。前者标示着该build setting并且可被用在其他的settings。后者是一个常量或者一个表达式,确定了build setting的值。一个build setting可能也有一个显示名称,在Xcode界面中显示build setting。
& & & & &另外,当你选择某个project template创建一个新的project,default build setting也相应的由Xcode生成了,你也可以为project或者某个target创建自定义build settings。一个conditional build setting的值取决于它的先决条件有没有被满足。这种机制允许你,例如,根据targeted
architecture确定build a product的sdk。
------------------Workspace------------------
------Workspaces Extend the Scope of Your Workflow
& & & & & &一个workspace是一个Xcode 文档,groups(组合)不同的project、文档,所以你可以同时管理多个project。一个workspace可以包含任意个Xcode project和别的文件。另外它管理着所有的文件,project和targets在一个workspace中可以有implicit和explicit 俩种relationships。
& & & & & &一个工程文件(project fiel)包含着指向project中其他所有文件、building configuration、其他project信息的指针。在Xcode 3以前,工程文件是root of the group 和file structure hierarchy。尽管一个project可以和其他project联系,但是相关项目一起工作还会比较困难。大部分的工作都是局限在一个project中。在Xcode
4以后,你可以创建一个workspace去包含多个project及相关文件。
& & & & & &另外提供对每个project所有文件的访问,workspace拓展了许多Xcode workflows工作范围。例如,because indexing在整个workspace里面做索引,code completion、Jump to Definition以及一些其他功能都是针对着整个workspace。因为refactoring operations在整个workspace工作,你可以refactor
API在一个framework project,并且在其他的application projects用它的framework in one operation。当building时候,一个project可以适用workspace中其他project的products。
& & & & & & workspace document包含着指向included projects 和其他files的指针,但是没有其他数据。一个project可以属于多个workspace。下图显示一个workspace包含俩个Xcode project (添加的.xcodeproj到workspace)加上一个document project(添加的文件夹到workspace)。
备注:workspace类似.xcodeproj文件,他不是一个文件夹,而是一个有管理、索引作用的一个文件。
------Projects in a Workspace Share a Build Directory
& & & & & 默认情况下,所有的workspace中的Xcode projects are built 在同一个目录下,简称workspace build directory。每一个workspace有 它自己的build directory。因为所有projects中的文件是同一个build directory,所有这些文件对每个project都是可见的,所以,如果有多个project用同一个libraries,你不需要单独copy它们到每一个project文件夹中。
Xcode会检查build directory中的文件去发现它们implicit dependencies。例如,一个workspace中的project build了一个library,这个library被workspace中另一个project引用,Xcode会自动先build the library然后build the project,即使build configuration中没有明显的设置。如果需要的话,你可以用explicit
build settings重写implicit dependencies。对于“显示依赖”(explicit dependencies),你必须创建项目引用。
& & & & & workspace中的projcet仍然保持着自己的特性。一个project是单独工作还是跟workspace中其他project有联系工作可以通过不同的打开方式,在workspace中打开还是在project中打开。因为一个project属于多个workspace,你可以随意添加多个projects,而不需要重新创建project或者workspace。
& & & & &你可以使用workspace默认的build directory,也可以自己指定一个。请注意,如果一个project指定了一个build directory,这个目录会被它所在的workspace build directory重写,当你build the project。& &&
------------------Scheme------------------
& & & & & 一个Xcode Scheme 定义了a collection of&targets to build,a configuration to use when building, and a collection of tests to execute。
(备注:这个定义感觉挺准确:A scheme&is a collection of settings that specify which targets to build, what build configuration to use(not the build setting), and the executable environment to use when the product specified by the target is
launched。&Scheme Configuration Help&)
& & & & & 你可以有许多scheme,但是同一时间只能是激活的。你可以指定是否一个scheme存储在project里,这样每一个包含他的workspace都能看到它或者只能看某一个workspace中看到。当你选择一个激活的shceme,你也需要选择一个运行目标(设备)。
&------------------------
ps:compile、build、execute区别:编译 + 连接/生成,目标是生成可执行Exe文件 + 执行。
本文已收录于以下专栏:
相关文章推荐
project 包含了以下信息:源文件代码的头文件和实现文件
静态库,动态库,
资源文件(如文本,xml,plist等)
界面资源文件(xib, storyboard等)
在文件结...
最近在做SDK兼容性测试发现一个问题,就是编译出来的SDK,在iOS8以下的系统中不能用。查了下,发现是编译设置错了,虽然我target设置的是支持iOS6以上的,但是工程设置的还是iOS8以上。xi...
由于我引入头文件了#import &UITableView+FDTemplateLayoutCell.h& 还一直报下面的crash:
 -[UITableView fd_heightForCe...
目前在Xcode中创建target有两种方式,下面分别对这两种创建方式做详细的解说
第一种:通过新建target(File ——& New——&Target)
1.创建新工程,如下图所示:
为什么要使用多target?
     因为在一些外包公司,很多项目都非常类似,甚至有时候只是修改了一下主题颜色,换一下图标,或者增减了一些小功能,但是其他7成以上的代码都是可以复用的。如果我们直接c...
一、xcode4中的环境变量
$(BUILT_PRODUCTS_DIR)
build成功后的,最终产品路径--可以在Build Settings参数的Per-configuration B...
xcode4的环境变量,Build Settings参数,workspace及联编设置
一、xcode4中的环境变量
$(BUILT_PRODUCTS_DIR)
一、xcode4中的环境变量
$(BUILT_PRODUCTS_DIR)
build成功后的,最终产品路径--可以在Build Settings参数的Per-configuration...
xcode4的环境变量,Build Settings参数,workspace及联编设置
一、xcode4中的环境变量
$(BUILT_PRODUCTS_DIR)
转载于:/xiaodao/archive//2422091.html
一、xcode4中的环境变量
他的最新文章
讲师:王哲涵
讲师:韦玮
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)关于xcode的Build Settings 和一些路径设置
我的图书馆
关于xcode的Build Settings 和一些路径设置
一般我们在xcode里面配置包含工程目录下头文件的时候,都要关联着相对路径和绝对路径,如果只是自己用这个项目,用绝对路径的问题不大,但是如果你把工程发给别人,别人就要在改这个绝对路径,这时候绝对路径的缺点立马出现。
所以在修改User Header Search Paths这个选项的时候使用
"$(SRCROOT)/当前工程名字/需要包含头文件所在文件夹"
将上面的双引号里面的字符串拷贝之后,你会发现这个“$(SRCROOT)”,会自动变成当前工程所以的目录。
这样就可以了,发给别人,别人也不用在去修改路径了。
一、xcode4中的环境变量
$(BUILT_PRODUCTS_DIR)
build成功后的,最终产品路径--可以在Build Settings参数的Per-configuration Build Products Path项里设置
$(TARGET_NAME)
目标工程名称
$(SRCROOT)
工程文件(比如Nuno.xcodeproj)的路径&
$(CURRENT_PROJECT_VERSION)
当前工程版本号
当编译静态库,设备选模拟器(iPhone 5.0 Simulator),未设置任何Build Settings参数时,默认的基础路径:
/Users/xxx/Library/Developer/Xcode/DerivedData/xxxWorkspace-caepeadwrerdcrftijaolkkagbjf
下面用$()代替上面一长串东东
$(SYMROOT) = $()/Build/Products
$(BUILD_DIR) = $()/Build/Products
$(BUILD_ROOT) = &$()/Build/Products
这三个变量中的$()不会随着Build Settings参数的设置而改变
相反,以下可以通过设置而改变
$(CONFIGURATION_BUILD_DIR) = $()/Build/Products/Debug-iphonesimulator
$(BUILT_PRODUCTS_DIR) = $()/Build/Products/Debug-iphonesimulator
$(CONFIGURATION_TEMP_DIR) = $()/Build/Intermediates/UtilLib.build/Debug-iphonesimulator
$(TARGET_BUILD_DIR) = $()/Build/Products/Debug-iphonesimulator
$(SDK_NAME) = iphonesimulator5.0
$(PLATFORM_NAME) = iphonesimulator
$(CONFIGURATION) = Debug
$(TARGET_NAME) = UtilLib
$(EXECUTABLE_NAME) = libUtilLib.a 可执行文件名
${IPHONEOS_DEPLOYMENT_TARGET} 5.0
$(ACTION) = build
$(CURRENTCONFIG_SIMULATOR_DIR) 当前模拟器路径&
$(CURRENTCONFIG_DEVICE_DIR) 当前设备路径&
$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME =
$()/Build/Products/Debug-iphonesimulator
$(PROJECT_TEMP_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) = $()/Build/Intermediates/UtilLib.build/Debug-iphonesimulator
自定义变量
${CONFIGURATION}-iphoneos 表示:Debug-iphoneos
${CONFIGURATION}-iphonesimulator&表示:Debug-iphonesimulator
$(CURRENTCONFIG_DEVICE_DIR) = ${SYMROOT}/${CONFIGURATION}-iphoneos
$(CURRENTCONFIG_SIMULATOR_DIR) = ${SYMROOT}/${CONFIGURATION}-iphonesimulator
自定义一个设备无关的路径(用来存放各种架构arm6/arm7/i386输出的产品)
$(CREATING_UNIVERSAL_DIR) = ${SYMROOT}/${CONFIGURATION}-universal
自定义变量代表的值
$(CURRENTCONFIG_DEVICE_DIR) = $()/Build/Products/Debug-iphoneos
$(CURRENTCONFIG_SIMULATOR_DIR) =&$()/Build/Products/Debug-iphonesimulator
$(CREATING_UNIVERSAL_DIR) =&$()/Build/Products/Debug-universal
iphoneos5.0下的编译脚本:
xcodebuild -project "UtilLib.xcodeproj"&-configuration "Debug" -target "UtilLib" -sdk "iphoneos5.0" -arch "armv6 armv7" build RUN_CLANG_STATIC_ANALYZER=NO &$(BUILD_DIR)="${BUILD_DIR}"&BUILD_ROOT="${BUILD_ROOT}"
iphonesimulator5.0下的编译脚本:
xcodebuild -project "UtilLib.xcodeproj"&-configuration "Debug" -target "UtilLib" -sdk "iphonesimulator5.0" -arch "i386" build RUN_CLANG_STATIC_ANALYZER=NO&$(BUILD_DIR)="${BUILD_DIR}"&&BUILD_ROOT="${BUILD_ROOT}"
加上下面一句表示输出到文件:
&&"${BUILD_ROOT}.build_output"
lipo脚本工具:合并iPhone模拟器和真机的静态类库,生成通用库
lipo -create -output&"${CREATING_UNIVERSAL_DIR}/${EXECUTABLE_NAME}" "${CURRENTCONFIG_DEVICE_DIR}/${EXECUTABLE_NAME}" & & & &&"${CURRENTCONFIG_SIMULATOR_DIR}/${EXECUTABLE_NAME}"
意思是:把"${CURRENTCONFIG_DEVICE_DIR}目录下的.a文件,和${CURRENTCONFIG_SIMULATOR_DIR}目录下的.a文件合并,
在${CREATING_UNIVERSAL_DIR}目录下,生成两个设备都通用的静态库,
例如:lipo -create -output xy.a x.a y.a
二、xcode4中build Settings常见参数解析
1.Installation Directory:安装路径
静态库编译时,在Build Settings中Installation Directory设置“$(BUILT_PRODUCTS_DIR)”
Skip Install设为YES
Installation Directory默认为/usr/local/lib
因为Build Location默认时,.a文件会放在很长(比如:/Users/xxx/Library/Developer/Xcode/DerivedData/xxxProgram
dalrvzehhtesxdfqhxixzafvddwe/Build/Products/Debug-iPhoneos)的路径下,或是我们target指定的路径
Skip Install如果是NO,可能会被安装到默认路径/usr/local/lib
2.Public Headers Folder Path:对外公开头文件路径
设为“include”(具体的头文件路径为:$(BUILT_PRODUCTS_DIR)/include/xx.h)
在最终文件.a同级目录下生成一个include目录
默认:/usr/local/include
Public Headers Folder Path这个路径就是使用这lib的某工程需要依赖的外部头文件.导入这路径后,#include/import "xx.h"才能看到
3.User Header Search Paths:依赖的外部头文件搜索路径
设置为“$(BUILT_PRODUCTS_DIR)/include”
和2中路径对应
4.Per-configuration Build Products Path:最终文件路径
比如设为“../app”,就会在工程文件.xcodeproj上一层目录下的app目录里,创建最终文件
默认为$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)&
等于$(BUILT_PRODUCTS_DIR)
5.Per-configuration Intermediate Build Files Path:临时中间文件路径
默认为:$(PROJECT_TEMP_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
6.Code Signing Identity:真机调试的证书选择
选一个和Bundle identifier相对应的证书
Library Search Paths:库搜索路径
Architectures:架构,设为 armv6 或 armv7
Valid&Architectures:应用框架,可以设为&armv6、&armv7 或i386
Product Name:工程文件名,默认为$(TARGET_NAME)
Info.plist File:info文件路径
Build Variants:默认为normal
Other Linker Flags:其他链接标签
设为“-ObjC”
当导入的静态库使用了类别,需要设为-ObjC
iOS Deployment Target:ios部署对象
比如可以选择设为,ios3到ios5的一种版本
Prefix Header:预编头文件(比如:UtilLib/UtilLib-Prefix.pch)
Precompile&Prefix Header:设为“Yes”,表示允许加入预编译头
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&
喜欢该文的人也喜欢2532人阅读
cd&BuildDemo/
.xcarchive
buildserver
xcodebuild&-archivePath&&/Users/mark/buildserver/BuildDemo.xcarchive&&-workspace&BuildDemo.xcworkspace&-sdk&iphoneos&-scheme&&BuildDemo&&-configuration&&Debug&&archive
然后我们开始打包成
xcodebuild&-exportArchive&-exportFormat&IPA&-archivePath&&/Users/mark/buildserver/BuildDemo.xcarchive&&-exportPath&&/Users/mark/buildserver/BuildDemo.ipa&
-project projectname
指定工程名,当同一目录下有多个工程时必须指定。
-target tagrgetname
指定编译的target的名称。
-alltargets
编译工程中的所有target。
-worksace workspacename
-scheme schemename
scheme 的名称,编译
时是必须的。
-destination destinationspecifier
使用&destinationspecifier&指定的设备作为目标设备。默认与
中选择的兼容。
-destination-timeout timeout
设置搜索目标设备的超时时间,默认是30秒。
-configuration configurationname
当编译每个
时使用&configurationname&指定的配置。
-arch architecture
当编译每个
时使用&architecture&指定的架构类型。
-sdk [&sdkfullpath& | &sdkname&]
指定编译时所用的
SDK。参数可以是
的绝对路径,也可以是 SDK
可识别的可用的 SDK,这个参数不会启动编译。
列出工程中的所有
和 配置,或者
的 schemes。不会启动编译。
-derivedDataPath path
时的结果数据存放的路径。
-resultBundlePath path
时把一个 bunndle
写到指定的路径。
-exportArchive
指定一个可以被导出的
文件。需要&-exportFormat,-archivePath和-exportPath`
配合使用,不能在编译时单独使用。
-exportFormat format
指定需要被导出的
文件的格式。可行的格式是 IPA(iOS
包文件),PKG(Mac
包文件)和
APP。如果未指定,则
xcodebuild
则会自动检测使用IPA
格式。
-archivePath xcarchivepath
archive 路径。
-exportPath destinationpath
指定导出的目标文件路径。
-exportProvisioningProfile profilename
文件时所使用的 provisioning pofile。
-exportSigningIdentity identityname
文件时所使用的应用签名 id。在可能的情况下,这个可以被&-exportProvisioningProfile自动推导出来。
-exportInstallerIdentity identityname
文件时所使用的安装签名 id。如果可能,这个可以被&-exportSigningIdentity&或&-exportProvisioningProfile&自动推导出来。
-exportWithOriginalSigningIdentity
指定创建可被导出的
文件时所使用的签名文件。
buildaction ...
指定一个或多个编译
时的编译行为。可行的编译行为有: -&build&编译根环境下(SYMROOT)的
target。默认行为。
analyze&编译并且分析根环境(SYMROOT)下的一个
或者 scheme。需要指定一个
archive&Archive
根环境(SYMROOT)下的一个
scheme。需要指定一个
test&测试跟环境(SYMROOT)下的一个
scheme。需要指定一个scheme。需要指定一个
和一个可选的目标。
installsrc&拷贝工程代码到源代码根目录(SRCROOT)。
install&编译
并且安装到发布目录下的 target
安装目录。
clean&从编译根目录下(SYMROOT)移除编译产品和中间文件。
-xcconfig filename
当编译所有
的时候从指定的文件加载编译设置。这些设置会覆盖其他的编译设置,包括命令行中单独传递的设置。
-dry-run, -n
打印本来要执行但是未执行的命令。
-skipUnavailableActions
跳过不能执行的编译而不是失败。这个选项仅仅在
参数使用了的时候有效。
setting=value
设置编译设置的值为
-userdefault=value
设置用户默认设置为
Xcode 的版本信息。不会启动编译。当和&-sdk&一起使用的时候,将会显示指定的
的版本信息,或者-sdk&后面未指定
则会显示所有的 SDK
版本信息。另外,如果指定了&infoitem&参数则一个单行的版本信息将会显示。
显示&xcodebuild&的使用信息。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:3409次
排名:千里之外
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'在&&开发过程中,我们经常会在 Xcode 里面做一些配置,比如添加系统库、第三方库,修改证书配置文件,修改编译属性等等。
在这个过程里面,一般大家仅仅只是根据经验来配置这些,并没有比较清晰的认识 Xcode Project 的层次结构。最近由于接触这个比较多,做了一些如下总结。
一、Xcode Project 概念Project
Xcode 中的 project 里面包含了所有的源文件、资源文件和构建一个或者多个 product 的信息。project 利用他们去编译我们所需的 product,也帮我们组织它们之间的关系。一个 project 可以包含一个或者多个 target。project 定义了一些基本的编译设置,每个 target 都继承了 project 的默认设置,每个 target 可以通过重新设置 target 的编译选项来定义自己的特殊编译选项。
一个 Xcode project 文件包含以下这些信息:
源文件引用&
源代码,包含头文件和实现文件
内部和外部的静态库和动态库
界面构建文件(nib)
在文件结构的导航中,使用 Groups 去组织源文件
工程层级编译配置。可以给工程指定超过一个编译配置,比如:编译配置的 release 和 debug。
target 定义了构造一个 product 所需的文件和编译指令。一个 target 对应于一个 product。target 就是&告诉编译系统要编译的文件和编译设置。编译指令就是根据 build settings and build phases 来确定的。
二、图解 project.pbxproj 文件
project.pbxproj 文件是 ProjectName.xcodeproj 包里面的一个配置文件,我们修改 Project 和 target 里面的配置,实际上就是修改了 project.pbxproj。
一个 Xcode 的 project.pbxproj 文件是由一个 24 位的 UUID 标识的对象值。
project.pbxproj 里面的每一种元素类型都是由 isa 来标识的。
project.pbxproj 文件结构
[Objective-C]&查看源文件&复制代码
&&&&&&&&archiveVersion = 1;
&&&&&&&&classes = {
&&&&&&&&};
&&&&&&&&objectVersion = 45;
&&&&&&&&objects = {
&&&&&&&&...
&&&&&&&&};
&&&&&&&&rootObject = 028FC02AAC07&;
1、XCConfigurationList
编译配置列表
[Objective-C]&查看源文件&复制代码
DE218BE11BDB7AA7003717DF&&= {
&&&&&&isa = XCConfigurationL
&&&&&&buildConfigurations = (
&&&&&&&&&&DE218C111BDB7AA7003717DF&,
&&&&&&&&&&DE218C121BDB7AA7003717DF&,
&&&&&&defaultConfigurationIsVisible = 0;
&&&&&&defaultConfigurationName = R
&&DE218C131BDB7AA7003717DF&&= {
&&&&&&isa = XCConfigurationL
&&&&&&buildConfigurations = (
&&&&&&&&&&DE218C141BDB7AA7003717DF&,
&&&&&&&&&&DE218C151BDB7AA7003717DF&,
&&&&&&defaultConfigurationIsVisible = 0;
&&&&&&defaultConfigurationName = R
XCBuildConfiguration
XCBuildConfiguration 元素定义了编译的配置
[Objective-C]&查看源文件&复制代码
870CABB600A69309&&= {
&&&&isa = XCBuildC
&&&&buildSettings = {
&&&&&&&&&&&&.....
&&&&&&&&&&&&PRODUCT_NAME =&"$(TARGET_NAME)";
&&&&name = D
870CABB600A69309&&= {
&&&&isa = XCBuildC
&&&&buildSettings = {
&&&&&&&&&&&&.....
&&&&&&&&&&&&PRODUCT_NAME =&"$(TARGET_NAME)";
&&&&name = R
2、PBXGroup
PBXGroup 这个元素下面包含了Xcode 工程的文件目录。在Xcode 文件体系里面,是使用 Group 组织管理的。
[Objective-C]&查看源文件&复制代码
DE218BDD1BDB7AA7003717DF = {
&&&&isa = PBXG
&&&&children = (
&&&&&&&&DE218C251BDBDF&,
&&&&&&&&DE218BE81BDB7AA7003717DF&,
&&&&&&&&DE218BE71BDB7AA7003717DF&,
&&&&sourceTree =&"&group&";
3、PBXNativeTarget
[Objective-C]&查看源文件&复制代码
DE218BE51BDB7AA7003717DF&&= {
&&&&isa = PBXNativeT
&&&&buildConfigurationList = DE218C131BDB7AA7003717DF&;
&&&&buildPhases = (
&&&&&&&&DE218BE21BDB7AA7003717DF&,
&&&&&&&&DE218BE31BDB7AA7003717DF&,
&&&&&&&&DE218BE41BDB7AA7003717DF&,
&&&&buildRules = (
&&&&dependencies = (
&&&&name = ShareSDKD
&&&&productName = ShareSDKD
&&&&productReference = DE218BE61BDB7AA7003717DF&;
&&&&productType =&"com.apple.product-type.application";
PBXSourcesBuildPhase
[Objective-C]&查看源文件&复制代码
4DF8B22D1171CFBF0081C1DD&&= {
&&&&&&&&isa = PBXSourcesBuildP
&&&&&&&&buildActionMask = ;
&&&&&&&&files = (
&&&&&&&&&&&&&&&&4DF8B23EC1DD&,
&&&&&&&&);
&&&&&&&&runOnlyForDeploymentPostprocessing = 0;
PBXFrameworksBuildPhase
[Objective-C]&查看源文件&复制代码
4D05CA2C125045&&= {
&&&&isa = PBXFrameworksBuildP
&&&&buildActionMask = ;
&&&&files = (
&&&&runOnlyForDeploymentPostprocessing = 0;
PBXResourcesBuildPhase
[Objective-C]&查看源文件&复制代码
8DCEB800E47090&&= {
&&&&&&&&isa = PBXResourcesBuildP
&&&&&&&&buildActionMask = ;
&&&&&&&&files = (
&&&&&&&&&&&&&&&&535C1E1B10AB6B&,
&&&&&&&&&&&&&&&&533B005E617D&,
&&&&&&&&&&&&&&&&533B005E617D&,
&&&&&&&&&&&&&&&&533B005E617D&,
&&&&&&&&&&&&&&&&533B005E617D&,
&&&&&&&&&&&&&&&&533B005E617D&,
&&&&&&&&);
&&&&&&&&runOnlyForDeploymentPostprocessing = 0;
PBXShellScriptBuildPhase
[Objective-C]&查看源文件&复制代码
4D22DBAEAF714&&= {
&&&&&&&&isa = PBXShellScriptBuildP
&&&&&&&&buildActionMask = ;
&&&&&&&&files = (
&&&&&&&&);
&&&&&&&&inputPaths = (
&&&&&&&&);
&&&&&&&&outputPaths = (
&&&&&&&&);
&&&&&&&&runOnlyForDeploymentPostprocessing = 0;
&&&&&&&&shellPath = /bin/
&&&&&&&&shellScript =&"./fix_references.sh";
PBXHeadersBuildPhase
[Objective-C]&查看源文件&复制代码
87293EBCAFD45&&= {
&&&&isa = PBXHeadersBuildP
&&&&buildActionMask = ;
&&&&files = (
&&&&runOnlyForDeploymentPostprocessing = 0;
1、Xcode 中的 workspace, project, target, scheme&&
2、Xcode Project File Format&
3、pbxplorer&
阅读(...) 评论()}

我要回帖

更多关于 xcodebuild 打包 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信