首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建Xcode项目的自定义版本

创建Xcode项目的自定义版本
EN

Stack Overflow用户
提问于 2010-04-19 05:16:14
回答 2查看 236关注 0票数 1

我将使用Xcode构建一个用Obj-C编写的Mac应用程序。为了便于讨论,我们假设它将有10个可选功能。我需要一种方法来启用或禁用这些功能,以创建应用程序的自定义构建。这些构建将是自动化的(最有可能通过most终端),因此我需要一种方法来声明在构建时启用/禁用这些功能中的哪些(配置文件或CLI参数将是理想的)。

那么,实现这一目标的最佳方法是什么呢?我正在尝试在开始编码之前计划好这一点,以便在我的代码库中有适当的分离,以允许这些功能来来去去。理想情况下,自定义构建应该只包含它应该具有的功能的编译代码。换句话说,我不想总是编译所有的功能,并在运行时调节它们。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-04-19 08:38:04

为此,您可以使用Xcode配置;例如,对于每个配置,您可以包含不同的前缀报头。然后,您可以通过xcodebuild从命令行触发构建。

如果您更喜欢配置文件方法,则可以使用.xcconfig文件来定义任何Xcode构建设置。

Xcode构建系统指南describes这两种方法。

票数 3
EN

Stack Overflow用户

发布于 2011-05-26 13:50:54

在编译器标志下使用#ifdef和-D标志来控制内容是编译入还是编译出。如果需要,您可以通过这种方式设置许多不同的配置,只需让xcode构建配置正常工作即可。

代码语言:javascript
复制
#include <stdio.h>

int
main (void)
{
#ifdef TEST
  printf ("Test mode\n");
#endif
  printf ("Running...\n");
  return 0;
}

输出1:

代码语言:javascript
复制
$ gcc -Wall -DTEST dtest.c
$ ./a.out
Test mode
Running...

输出2:

代码语言:javascript
复制
$ gcc -Wall dtest.c
$ ./a.out
Running...

来源:http://www.network-theory.co.uk/docs/gccintro/gccintro_34.html

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

https://stackoverflow.com/questions/2663991

复制
相关文章

相似问题

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