Re: Dependency Issues
Re: Dependency Issues
- Subject: Re: Dependency Issues
- From: Andreas Grosam <email@hidden>
- Date: Tue, 29 Mar 2005 15:00:24 +0200
On 28.03.2005, at 20:17, Dietmar Planitzer wrote:
On Mar 28, 2005, at 6:19 PM, Andreas Grosam wrote:
It looks like, the dependency mechanism in XCode does not care about
changes of many (or even all?) settings in the various compiler,
linker or install options.
For instance, if i change a setting which would require a re-link,
XCode does not. When re-building, it finishes immediately -
apparently without doing anything.
The same for various compiler settings. If i change one which would
require a re-compile of all the source files, XCode does nothing and
thinks it is already finished. (didn't tested file-specific options
so far, though)
Furthermore, if i change the build style from "Development" to
"Deployment", XCode does not build anything - provided the
pre-compiled headers are already precompiled.
I didn't tested the install options so far; I suspect it is the same.
Well, i can't believe that this is really true and thus have to
manage *such* dependencies manually - so, what i'm doing wrong?
Short answer: You're using Xcode :)
Longer answer: Xcode's build system does not take changes in the area
of compiler settings or build styles into account. Thus, you are
responsible for cleaning the project by hand when you change a
compiler setting.
Then, i suppose, the dependency mechanism does also not take
compiler/linker versions, libraries/versions to link against, order of
libraries, order of include paths or the existing file structure into
account.
A dependency mechanism which just tracks modification dates of
translation units, is - to say it politely - insufficient.
I could use the "Compile" and a (new) "Link" button, instead. And for
more complex dependencies through headerfiles, i would propose a new
kind of button in the menu bar which would be very helpful: "Clear and
Build".
(sorry for the sarcasm, but i thought the days of MakeMake are gone)
Its always been that way since the very early days of the first
ProjectBuilder in OpenStep (written without a space, back then). While
this behavior made some sense back in those days because PB was using
good old make as its "build system", its IMHO not understandable
anymore that Xcode is using a native build system.
Somewhere i read something about a "dependency graph" and "nodes" ...
looks promising. Thus i donĀ“t understand why it does not work.
If you find "features" like this just as annoying as I do, then file
bugs in Apple's radar. Be sure to explain in detail why this or that
Xcode behavior is a problem / slowing you down / wastes your daily
working time. Then hope for the best...
Well, suppose i have a big project, which takes 90 mins to compile.
Suppose, i change a setting which requires to relink, which would
probably take 2 minutes or so. Or suppose, i just change an install
setting.
But, it will not work; it looks like i have to clear the whole project
- which takes 90 minutes.
The "distributed compile" feature is nice, but....i prefere the "smart"
way instead of a brute force method.
I wonder, why i *have* to explain this in *detail* to the
XCode-developers. Dietmar, i know what you mean, i have made the same
experiences. :-(
Well, you suggest to file this as a feature request, or alternatively
as a bug report to the appropriate lists. How many did this already
before me? As you mentioned already, this "feature" exists since the
early days of PB.
I've so far filed somewhere between 40 and 50 bugs / enhancement
requests against the Xcode UI (haven't had time yet for attacking the
build system), with mixed results. Some bugs have been fixed in Xcode
2, others were closed with "works as designed". Well, it may very well
be the case that the feature in question works as designed -
IMHAO, it is not a matter of opinion. But this is my opinion ;-)
That feature in question is a matter of maths and there is no reason to
make it wrong.
Only if we have really good reasons to bypass the dependency mechanism,
Apple could implement something like a "untouch" feature. In this case,
i agree that this would require a "feature-request".
but that's exactly the problem (i.e. behavior of Files & Groups pane
since Xcode 1.5 or the weird behavior of the embedded editors in the
Find and Debugger windows).
I could add some more in this area, too. But i restrict my wishes to
the more essential parts of the dependency mechanism.
Thanks Dietmar!
Regards
Andreas
Regards,
Dietmar Planitzer
_______________________________________________
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