Re: clean / removing precompile headers broke
Re: clean / removing precompile headers broke
- Subject: Re: clean / removing precompile headers broke
- From: email@hidden
- Date: Thu, 20 Jul 2006 15:34:33 +0200
Hi Chris,
thanks for your quick reply. I did not know about the shared precomp. headers. very interesting.
However, deleting the cache did not help. For your information: I'm building a Mach-O-framework. The value I find in my deliverable actually comes from a file that survives the xcodebuild clean by the name of Preprocessed-Info.plist. It resides inside the build directory that is created next to the project during the build. If I clean the process manually with the "delete procompiled headers" flag enabled from the XCode-IDE. That file is deleted and re-created correctly during the build.
So I still believe that the xcodebuild clean is not correct.
-jacques
==================================
On Jul 19, 2006, at 4:37 PM, Chris Espinosa wrote:
As of Xcode 2.1 Xcode uses a "shared precompiled header" mechanism where several projects that have similar characteristics can use the same precompiled header file. This can save enormous amounts of time and disk space if, for example, you're building dozens of plugins that are all built the same way. That's why precompiled headers are in a central directory separate from any project's build directory.
Shared precompiled headers are identified by the name of the prefix file and a hash of critical build settings. If all match, an existing shared one is used; if there's any difference, then a new one is created. Cleaning uses the same algorithm.
So what can happen is you:
- build
- change settings
- clean including precompiled headers
And there's now no match for the precompiled header, so the one that you used for the last build is not cleaned. Sometimes this is desired behavior; that may be a header shared by another project (perhaps one that isn't open right now).
If you want to ensure that precomps are removed, make sure to Clean (Removing Precomps) before changing any build settings or your prefix name.
The precomp cache is capped at 1Gb, and on each Xcode launch it clears out older headers so that the cache doesn't grow without bounds. There's an Expert Preference you can use to control the cache size. And you can always delete it manually from your /Library/Caches folder.
Chris
=================================
On Jul 19, 2006, at 7:24 AM, email@hidden wrote:
Upon researching on a build problem where a clean command line build would render incorrect Info.plists I noticed that xcodebuild did not under any circumstances remove precopiled headers. It appears that the bug mentioned in the mail thread below did resurface. Can anybody confirm?
I'm using the following XCode build:
Xcode IDE: 744.0
Xcode Core: 747.0
ToolSupport: 733.0
here is a link to a prvious thread:
http://lists.apple.com/archives/xcode-users/2006/Mar/msg00222.html
Has the bug already been opened?
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden