Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Software - Troubleshooting and Discussion > Developer Center > usr/bin/fixPrecomp (What is this?)

usr/bin/fixPrecomp (What is this?)
Thread Tools
Mac Enthusiast
Join Date: Sep 2000
Location: Vermont, USA
Status: Offline
Reply With Quote
Feb 20, 2003, 07:09 PM
 
Someone told me that the line in my subject should be used for this problem:

I don't know much about Carbon (and only a bit more about Cocoa), but
recently incorporated some Carbon code into my Cocoa application and
now I get this warning:

AppController.h:5: warning: could not use precompiled header
'/System/Library/Frameworks/Carbon.framework/Headers/Carbon-gcc3.p',
because:
AppController.h:5: warning: 'CarbonSound/CarbonSound.h' has different
date than in precomp
AppController.h:5: warning: 'CarbonSound/Sound.h' has different date
than in precomp

If I click on the warnings after it builds, it takes me to this line in
my AppController.h file:

#import <Carbon/Carbon.h>

Everything seems to work fine, but I am worried. Anyone have any
suggestions?

What do I do with the unix line in the subject? Is fixPrecomp a command a file? Anyhelp?
     
Mac Elite
Join Date: Feb 2001
Location: Vancouver, WA
Status: Offline
Reply With Quote
Feb 20, 2003, 09:03 PM
 
1. Open a Terminal window.
2. Type (without the quotes) "sudo /usr/bin/fixPrecomps" and press Return.
3. Enter your password and press Return.

The compiler has a feature called Precompiled Headers. Normally, every time you build, the compiler has to compile not only your source code but all of the .h files from the frameworks and libraries you're using. But unlike your own source code files, these ones aren't changing every time you build -- they're installed with the system. So Apple precompiles all the headers in a given framework into a .p file, which gets included by the compiler when you build.

Sometimes a system update will install new headers -- for example, to add a new developer-accessible feature to Carbon or Cocoa or QuickTime. In this case, the precompiled header won't match the actual headers or the symbols in the library, so you'll need to recompile it. That's what fixPrecomps does -- it goes through all the installed frameworks and makes sure the precompiled headers are correct, and recompiles them if necessary.

Clear as mud?
Rick Roe
icons.cx | weblog
     
Mac Enthusiast
Join Date: Sep 2000
Location: Vermont, USA
Status: Offline
Reply With Quote
Feb 20, 2003, 09:06 PM
 
Originally posted by Rickster:


Clear as mud?
Clear as dirt.

Thanks!
     
   
Thread Tools
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Top
Privacy Policy
All times are GMT -5. The time now is 08:48 PM.
All contents of these forums © 1995-2011 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.7 © 2000-2011, Jelsoft Enterprises Ltd., Content Relevant URLs by vBSEO 3.3.2