Red Hat Bugzilla – Bug 548826
gcc hangs during compilation
Last modified: 2010-03-11 18:18:36 EST
Created attachment 379264 [details]
The preprocessed output of g++ -E ... ImageVis3D_WindowHandling.cpp
Description of problem:
The 'ImageVis3D' program fails to compile; one source file seems to cause the compiler to enter an infinite loop.
Version-Release number of selected component (if applicable):
This is in fedora12, gcc 4.4.2-7.
How reproducible: 100% of the time
Steps to Reproduce:
1. checkout imagevis3d: 'svn co https://gforge.sci.utah.edu/svn/imagevis3d'. There are multiple sub-repositories (externals) that you'll need to confirm the security fingerprint for.
2. Make sure qt-devel is installed and qmake is in your path
3. cd imagevis3d
4. sh Scripts/unix-dev-cfg.sh
Compilation stalls at ImageVis3D_WindowHandling.cpp. I gave it significant time to get through this before giving up:
Additional info: The preprocessed source output is attached.
I apologize. Step 4 has changed to:
in latest trunk.
Secondly, I have upgraded to:
gcc version 4.4.2 20091222 (Red Hat 4.4.2-20) (GCC)
and in this version I can confirm that this is related to the optimization level. qmake's default configuration ends up adding "-O2" to the build options; if I manually change this to "-O0", the compilation completes in 4 seconds.
This may be a duplicate of 531218.
Please try http://kojipkgs.fedoraproject.org/packages/gcc/4.4.2/24.fc12/
No dice. Using:
gcc version 4.4.2 20100112 (Red Hat 4.4.2-24) (GCC)
it still hangs on 'ImageVis3D_WindowHandling.cpp'. "-O0" is still a valid workaround. I'll also note that "-O1" seems to cause the issue as well.
I guess I'll resurrect the gcc44-max-vartrack-size.patch, but this time with a 50000000 default instead of 5000000. That way it shouldn't trigger on reasonably sized testcases and will only trigger on these monsters.
Please try gcc-4.4.3-4.fc12.
I apologize for the delay. Compilation succeeds on a fresh+updated FC12 install (gcc-4.4.3-4). Thanks!
I do get a:
note: variable tracking size limit exceeded with debug insns, retrying without
but from comments it sounds like this is by design.