标签: build-settings

如何使用Xcode 4.2区分多个目标

我开发了一个精简版的应用程序.现在我想创建一个付费版本.所以我复制了目标,更改了它的名称(所以更改plist和其他具有该名称的东西),现在我必须区分代码.我正在使用Xcode 4.2,我在网上看到我必须创建一个预处理器标志.我的问题是Xcode 4.2中的这个标志只在项目的构建设置中,而不在目标的构建设置中.

我需要能够做这样的事情:

#ifdef paid
    ...
#else
    ...
#endif
Run Code Online (Sandbox Code Playgroud)

xcode target build-settings xcode4 xcode4.2

10
推荐指数
1
解决办法
5940
查看次数

构建阶段之间的区别 - >链接二进制文件与库或构建设置 - >链接器标志

Build Phases - > Link Binary与Libraries或Build Settings - > Linker Flags有什么区别?

前者似乎不允许您在Debug与Release之间进行指定,并且其中指定的框架似乎也与后者不匹配.

注意:我已经检查了SO上的现有帖子,但没有找到能够准确回答这个问题的帖子.

build-settings linker-flags xcode8

10
推荐指数
1
解决办法
759
查看次数

如何在构建阶段从运行脚本访问Xcode用户定义构建设置?

我在构建阶段运行脚本.

Xcode允许您定义用户定义的构建设置.我以为我会使用这些设置来存储我想传递给脚本的值或路径.

这可能吗?如何在构建阶段将用户定义的构建设置传递给脚本?你能指点我一些文档或教程吗?

我正在使用Xcode 4.3.1

build-automation xcode build-settings xcode4 run-script

9
推荐指数
1
解决办法
1942
查看次数

可执行文件使用无效授权签署 - 0xe8008016

我尝试在带有xcode的设备上运行我的应用程序,它是一个离子应用程序,使用xcode 9,我没有问题但是因为我已经更新到xcode 10我每次都会收到此错误消息:

应用程序的代码签名权利文件中指定的权利无效,不允许,或与您的配置文件中指定的权限不匹配.(0xE8008016).

我尝试过在网上找到的所有东西

1.添加能力,

2.改变构建设置,

3.config.xml.

code-signing-certificate build-settings code-signing-entitlements ionic-framework xcode10

9
推荐指数
1
解决办法
8639
查看次数

AWS Amplify 构建设置

使用 Amplify 我在部署 React 应用程序时遇到困难,我认为这是由于构建设置造成的。尝试部署时提供的默认构建设置如下所示: aws构建设置

我知道这是不正确的,我在构建日志中发现的错误是:

2020-05-14T00:02:22.327Z [WARNING]: !! No index.html detected in deploy folder: /codebuild/output/src568504829/src/chatterfield/
Run Code Online (Sandbox Code Playgroud)

部署成功,除非我启动应用程序时收到 ERR_TOO_MANY_REDIRECTS。在我将baseDirectory构建设置更改为/client/public指向index.html. 该应用程序似乎启动时没有出现重定向错误,但没有加载任何内容。我猜这是因为我没有运行 npm run build 命令,或者没有加载预构建命令。任何帮助将不胜感激。谢谢 这是此应用程序链接到的存储库: https ://github.com/travelerr/chatterfield

deployment amazon-web-services build-settings npm aws-amplify

9
推荐指数
3
解决办法
8109
查看次数

如何为XE2设置默认编译器选项?

我无法弄清楚如何更改默认的构建/编译设置.项目选项对话框左下角的小默认复选框消失了.该文件规定:

The Default checkbox that appeared at the lower edge of many Project Options pages has been removed from the product. If you want to specify options as the default for multiple projects, the suggested alternative is to use option sets instead.

关于" 选项集 "," 配置管理器 "等我会四处走动.这甚至可能吗?什么是"指定选项为默认多个项目"是什么意思?如果我有多个项目那么这意味着那些项目及其选项存在,我如何设置默认值为已设置的东西?新项目怎么样?

delphi build-settings delphi-xe2

8
推荐指数
1
解决办法
4086
查看次数

更改部署目标后,无法再将app模块导入单元测试

为了在我的swift单元测试中对我的主应用程序目标的公共类进行单元测试,我必须在我的测试中导入我的主应用程序模块,如下所示:

#import MyAppModuleName

这工作得很好,直到我将部署目标从7.0更改为8.4.

现在构建和运行我的应用程序仍然完美,但运行单元测试停止工作.编译器抱怨上面的import语句:Swift Compiler Error: Module file's minimum deployment target is iOS8.4 v8.4

我不知道为什么.我忘记在其他地方更改部署目标了吗?

我的工作区(Xcode 6.4.)包含我自己的项目和一个Pods项目(由cocoapods自动创建).我在我的应用程序和测试中使用了Swift和Objective-C.

这是我更详细的做法:

1)为我的项目,我的主要目标,以及Pods我工作区中的项目以及所有pod目标,将部署目标从7.0更改为8.4 .

在此输入图像描述在此输入图像描述在此输入图像描述在此输入图像描述

2)清理构建文件夹(Shift + Alt + Cmd + K)并重新启动Xcode.

3)Cmd + U - >错误

将主应用程序的部署目标更改回7.0时,一切正常.

这个问题来自哪里?

xcode unit-testing build-settings ios swift

8
推荐指数
1
解决办法
2407
查看次数

将虚拟对象添加到项目中

我想在项目中添加虚拟对象以进行测试,但我不希望它们包含在我的最终构建中.所以我有我的AppDelegate班级和进口:

#ifdef TESTING
#import "DummyBeaconLocationManager.h"
#else
#import "BeaconLocationManager.h"
#endif
Run Code Online (Sandbox Code Playgroud)

然后:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
...
#ifdef TESTING
    [[DummyBeaconLocationManager sharedInstance] startRanging];
#else
    self.beaconLocationManager = [BeaconLocationManager sharedInstance];
    [self.beaconLocationManager startRanging];
#endif
    return YES;
}
Run Code Online (Sandbox Code Playgroud)

但问题是我必须将此包含在我的Target Membership,而不是我的测试目标中.有没有办法不在我的主目标中包含这些文件,但仅限于Test目标?

编辑:需要做的是在发布后测试我的应用程序.我想在模拟器上测试它,但是使用信标的app.所以我创建了代表信标的虚拟对象并模拟了位置管理器.当应用程序以TESTING选项启动时,它不会启动测距信标,而是将虚拟对象作为信标.

xcode objective-c build-settings ios

8
推荐指数
1
解决办法
250
查看次数

将POD Spec属性与其Xcode配置中的不同构建设置相关联(例如,Release,Debug)

我正在尝试为现有的库项目创建POD规范.

在Xcode项目中,构建设置为不同的构建配置定义了不同的预处理器宏(例如:"Debug"和"Release")

例如:

对于"调试"配置:

GCC_PREPROCESSOR_DEFINITIONS = DEBUG=1 
Run Code Online (Sandbox Code Playgroud)

对于"发布"配置:

GCC_PREPROCESSOR_DEFINITIONS = NDEBUG NS_BLOCK_ASSERTIONS
Run Code Online (Sandbox Code Playgroud)

如何将这些设置映射到相应的POD规范?

例如:

spec.compiler_flags = '-DDEBUG=1'
Run Code Online (Sandbox Code Playgroud)

spec.compiler_flags = '-DNDEBUG -DNS_BLOCK_ASSERTIONS'
Run Code Online (Sandbox Code Playgroud)

不幸的是,官方文档通常更令人困惑和不清楚,而不是真正有用:

构建设置

构建设置

在该组中列出了与应该用于构建库的构建环境的配置相关的属性.

如果未在子规范中定义,则该组的属性将继承父级的值.

例子:

spec.compiler_flags =' - DOS_OBJECT_USE_OBJC = 0',' - Wno-format'

直观地说,我会做这样的事情:

configuration :Debug do
    spec.compiler_flags = '-DDEBUG=1'
end

configuration :Release do
    spec.compiler_flags = '-DNDEBUG -DNS_BLOCK_ASSERTIONS'
end
Run Code Online (Sandbox Code Playgroud)

但是,这是在猜测.

xcode build-settings cocoapods

7
推荐指数
1
解决办法
1318
查看次数

是否可以在 docker hub 的自动构建中添加环境变量?

我想自动化我的构建过程,并且需要传递一个环境变量来运行Dockerfile. 我想知道在 Dockerhub 中是否有任何方法可以做到这一点。我知道 docker cloud 有这样的东西,但我想知道 Dockerhub 中是否有这个功能,因为--build-args在正常构建的 cli 中有参数。

automated-deploy build-settings docker

7
推荐指数
1
解决办法
3366
查看次数