This is a monthly reminder to help people use the xcode-users list better.
First things first: It's Xcode, not xCode or XCode or x-code. Remember that now.
Acquaint yourself with the lists.apple.com rules and basic netiquette
See
http://lists.apple.com/tc.html for the basic Terms and Conditions. They're quite simple. No spam, no abuse, try to keep on topic, don't be a listmom if you're not the listmom. That site also has a guide to all the lists Apple hosts; you'll have better odds getting a Cocoa or IOKit question answered if you ask the right list, not this one.
Please preface subjects with [OT] for off-topic discussions. Don't preface admin requests with [ADMIN] because you shouldn't post admin requests to the list.
To help people follow a thread, please post one question per message and use a descriptive subject line. Subjects like "Xcode Question" or "Hi" don't help people decide whether they may or may not be able to answer them for you.
Please change the subject if you're forking the topic. If you are starting a new topic, start with a new mail message instead of replying to a different topic and changing the topic; threaded mail clients like Mail.app will lump your new topic buried in the other discussion, and people may miss it. Don't reply to digest messages by quoting the whole digest and leaving the digest subject: nobody will be able to figure out which of the dozens of messages in the digest you're responding to.
Please don't crosspost. People who reply on this list may not have posting privileges on other lists you cross-post to.
We have no policy on top-posting vs. bottom-posting. Do not argue about that here.
Questions relating to products you've received through the ADC seeding programs, including questions about the Xcode 3.1 Beta and the iPhone SDK, should not be asked here. See the Seeding Notes of your seeded product for information on confidentiality and the channels by which you can provide feedback and request support.
Try documentation and searches first
Many questions have straightforward answers already posted on the list, in Apple documentation, or elsewhere on the Internet. Pick a couple key words from your question and try these Google searches:
site:developer.apple.com Xcode <your keywords>
site:lists.apple.com xcode-users <your keywords>
You can even write your question in email, select its text, and choose Mail > Services > Search with Google. It's always worth a try.
How to ask questions the smart way
The most important part of a mailing list posting is precision. We deal with computer programming here, and APIs and compilers are intolerant of imprecision. If something is not working the way you expect, try to be as complete, detailed, and precise as you can about what you did, what the result is, and how it differs from your expectation.
An email titled “Xcode Problem” saying “I tried to add a file to my project and it didn't work. What's wrong?” will not get a useful response. If you rephrase it “File added to the project doesn’t get built” and specify that you dragged a .cp file from the Finder into a project window, unchecked all the checkboxes in the sheet, and when you clicked the Build button in the toolbar, the Build Results transcript (paste the excerpt here) showed that in your target two other files were compiled but the file you added was not compiled. That's the kind of detail that will get a question answered.
You can drag and drop most of the interesting information you need right from Xcode into the New Mail window. Look in the Xcode Build Results, for example. If you find a step labeled "Compiling main.c (1 warning)" and you drag that step into an outgoing Mail message, here's what you get:
cd /Volumes/Local/Users/espich/4831414
setenv MACOSX_DEPLOYMENT_TARGET 10.4
/usr/bin/gcc-4.0 -x c -arch ppc -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -g -O0 -Wreturn-type -Wunused-variable -fmessage-length=0 -mtune=G5 -mfix-and-continue -mmacosx-version-min=10.4 -I/Volumes/Local/Users/Shared/Intermediates/4831414.build/Debug/4831414.build/4831414.hmap -F/Volumes/Local/Users/Shared/Objects/Debug -I/Volumes/Local/Users/Shared/Objects/Debug/include -I/Volumes/Local/Users/Shared/Intermediates/4831414.build/Debug/4831414.build/DerivedSources -DMAC_OS_X_VERSION_MIN_REQUIRED=1040 -fconstant-cfstrings -D__CONSTANT_CFSTRINGS__ -isysroot /Developer/SDKs/MacOSX10.4u.sdk -c /Volumes/Local/Users/espich/4831414/main.c -o /Volumes/Local/Users/Shared/Intermediates/4831414.build/Debug/4831414.build/Objects-normal/ppc/main.o
/Volumes/Local/Users/espich/4831414/main.c: In function 'main':
/Volumes/Local/Users/espich/4831414/main.c:4: warning: incompatible implicit declaration of built-in function 'printf'
It's infinitely easier to diagnose the problem from this than from a written statement that "I get an error about printf."
It's also useful to actually read the responses people post. Solemnly he came forward and mounted the round gunrest. He faced about and blessed gravely thrice the tower, the surrounding country and the awaking mountains. Then, catching sight of Stephen Dedalus, he bent towards him and made rapid crosses in the air, gurgling in his throat and shaking his head. Stephen Dedalus, displeased and sleepy, leaned his arms on the top of the staircase and looked coldly at the shaking gurgling face that blessed him, equine in its length, and at the light untonsured hair, grained and hued like pale oak. It pays to read everything posted.
Things to Remember when Posting a Question
These are always helpful to have in a post:
• State what version of Xcode you're using (1.2, 1.5, 2.0, 2.1, 2.2, 2.2.1, 2.3, 2.4, 2.4.1, 2.5, or 3.0). The particular Mac OS version is useful, but seldom crucial; the model of Mac you're using is rarely material.
• Let us know whether you're using native Xcode targets or JAM-base targets; JAM-based targets are Java projects or older ProjectBuilder projects that have not been upgraded in Xcode 1.0 or later.
• Are you trying to build for Universal? Are you using the 10.4u or 10.5 SDKs?
• If you're having trouble debugging, let us know whether you're using STABS or Dwarf debug format. In Terminal, enter:
$ defaults write com.apple.Xcode PBXGDBDebuggerLogToFile YES
$ defaults write com.apple.Xcode PBXGDBDebuggerLogFileName /tmp/IncludeInBug.log
and excerpt the interesting parts of the log file. (In Xocde 3.0, just check the "Debugging Log" checkbox in Preferences > Debugger.
• If Xcode crashes (you get the "Uncaught Exception" dialog box) please go to Console.app and look for the crash log for Xcode, and copy and paste enough of it in your message if possible.
Chris Espinosa
Manager, Xcode Core IDE, Apple