Summary: | Gideon's generated configure script thinks sizeof(size_t) != sizeof(unsigned long) | ||
---|---|---|---|
Product: | [Applications] kdevelop | Reporter: | Jason Burrell <jburrell> |
Component: | general | Assignee: | KDevelop Developers <kdevelop-devel> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | 3.0.0a4 | ||
Target Milestone: | --- | ||
Platform: | Debian testing | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: | GCC 2.95 config.log |
Description
Jason Burrell
2003-06-20 02:11:57 UTC
Please check your config.log for the real error. It's quite likely a missing library. If you don't know what you're looking for, attach config.log to this bug report. If you do find it, please paste here the gcc error message. It will help us fixing this problem later and it seems to have spiked up recently. Upon further investigation, if nobody else can reproduce this I'm going to assume the Debian guys hosed autoconf somehow. I just found a less severe but similar error on an old configure script that I know is good. Created attachment 1854 [details]
GCC 2.95 config.log
Here's the config.log.
Something interesting: Forcing the script to use gcc-3.3 results in successful
execution of the script, though there is still some expression error when
autoconf is checking the maximum length of command line arguments.
I seem to have it fixed now. To fix it on a Debian system running the unstable
distribution, simply force the compilation and configuration to use
{gcc,g++}-3.3 instead of 2.95. Unfortunately, this means you have to manually
add the links in /usr/bin since Debian doesn't do so for gcc-3.3. (This is most
likely to save both the Linux kernel guys and the Debian GCC guys headaches.
The Linux kernel had some problems with 3.3 a while back and likes 2.95 a whole
lot better. This may have changed.)
I'm sorry, I really don't understand what has happened wrong for you. The config.log is missing the error message from the compiler. And the code seems fine for me... Back around line 2568 of the config.log file, there's this, which says that if sizeof(unsigned long) isn't 0, say it is zero anyway. Where the heck this code comes from, though, is beyond me. When I go look at the config file generated when I use gcc-3.3, I can't find this snippet of code at all. (If you haven't guessed, I know about as much about how autoconf works as I do about the mating habits of the walrus.) int | main () | { | if ((unsigned long *) 0) | return 0; | if (sizeof (unsigned long)) | return 0; | ; | return 0; | } configure:20830: result: no configure:20833: checking size of unsigned long configure:21139: result: 0 configure:21147: checking sizeof size_t == sizeof unsigned long I csnot reproduce it. Can I close it? See this thread from kde-devel: http://lists.kde.org/?t=107599133600004&r=1&w=2 It appears there is a build system problem with some gcc versions. I doubt there is much we can do about it from KDevelop. How about closing this one? This is now the 3rd request to close it, so i'll do :-) As to my knowledge, if sizeof size_t == sizeof unsigned long is not true, there is usually a big flaw in the setup of the box that reports this. |