簡體   English   中英

從編譯中禁用Xcode項目中的某些文件

[英]Disabling some files in Xcode project from compilation

我通過復制現有文件夾在Xcode中開始了一個新項目,因為我的新應用程序將與舊版本具有許多共同功能。

問題是新應用程序不會使用我在舊應用程序中使用的框架。 當我刪除框架時,包括該框架在內的所有文件都會引發錯誤。

基本上我想在許多文件上禁用所有語法檢查,依賴性檢查等。 我希望Xcode忽略這些文件,盡管它們在項目樹中。 稍后當我修改它們時,我將再次手動啟用它們。 通過這種方式,我可以編譯和測試我的小錯誤更改,而無需修復它在“未修改”文件中導致的所有錯誤,無論如何我將在未來修復。

我可以從項目樹中刪除它們,然后在我的工作完成后逐個添加它們,但我不想這樣做,因為我的項目樹可能搞砸了,應該有另一種方法來實現這一點。

我嘗試從所有目標成員身份中刪除這些文件,但它沒有幫助。

如果需要刪除大量文件,可以創建用戶定義的構建設置,該設置應稱為EXCLUDED_SOURCE_FILE_NAMES。 並添加文件名或模式。

在我的情況下,我選擇了我想省略一些文件的目標,編輯器 - >添加構建設置 - >添加用戶定義的設置(起初這是灰色的。我選擇了項目文件(就在TARGETS之上)然后重新選擇了目標文件並且能夠創建用戶定義的設置 - >將其命名為EXCLUDED_SOURCE_FILE_NAMES - >值類似於PREFIX *

當然,您可以為所有目標創建整個項目的用戶定義設置。

示例如何: 在此輸入圖像描述

原始答案: http//lists.apple.com/archives/xcode-users/2009/Jun/msg00153.html

在Xcode 9中,我不確定舊版本,請訪問:

構建設置 - >構建選項 - >排除的源文件名

添加要排除的所有文件名。 你甚至可以做通配符匹配。

Bellow是我如何排除所有以dev-開頭並以.cc結尾的文件的示例,除了為Simulator構建的Debug方案之外的所有方案。 所有Debug Simulator構建排除以release-開頭並以.cc結尾的文件

在此輸入圖像描述

希望這可以幫助!!

UPDATE

我在框架方面遇到了類似的問題,您也可以將框架排除在嵌入到您的應用程序之外!

我的問題是我有2個框架,一個是為模擬器構建的,另一個是為ARM構建的。 iTunes Connect抱怨我,包括應用程序的模擬器。

如果您有許多框架,這也有助於減少應用程序的大小。

看看這里的答案

Xcode:是否有位置/標志來阻止類編譯?

簡而言之,從項目目標中刪除文件。

作為臟黑客你可以嘗試排除不是文件,但是它的代碼是使用#ifdef NotCompile + #endif因為它是在C \\ C ++中用.h完成的,在YOURPROJECT-prefix.pch中添加\\ #define NotCompile

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM