[K3d-development] gcc 3.3 - [was:] getting k3d on solaris
Brought to you by:
barche
From: Timothy M. S. <ts...@k-...> - 2004-01-07 20:26:56
|
Riccardo wrote: > but the compilation then stops here: > > shader_arguments.h:112: error: too many initializers for `const > __class_type_info_pseudo' > make[2]: *** [shader_arguments.lo] Error 1 > > > but that line reads: > > controls_t m_controls; Well, the good news is that this isn't a Solaris-specific issue :) The bad news is that you're using gcc 3.3, right? I didn't notice this in your earlier post of I'd have mentioned it - this is a longstanding issue that we have with gcc 3.3. You should have received a warning about gcc 3.3 when you ran configure - in fact, you should have had to use the --with-gcc-3-3 option to get configure to complete at all. Please let me know whether this happened for you or not, as it relates to some of the changes I made for portability. I've yet to find any useful information on the cause of this problem - I am convinced that the code is correct C++ (works fine under gcc 3.0, 3.1, 3.2, probably still works under gcc 2.95), and __class_type_info_pseudo seems to be some internal implementation detail for either the compiler or the runtime libraries. Just to put things into perspective, Gentoo has not marked gcc 3.3 stable for any platform, and I note from their bugzilla that many other packages fail to compile under gcc 3.3 - including, amusingly, a package named "k3b" ... ! To ensure that everyone knows where they stand, I'm going to do some arbitrary policy-making here: until Gentoo marks gcc 3.3 stable on x86, I'm not gonna touch it. If you're using gcc 3.3 now and don't want to wait, the most useful thing you could do would be to file a bug report with the gcc team, and attach the preprocessed code that fails. Cheers, Tim |