Bug 159934 - kalzium won't compile with gcc 4.3
Summary: kalzium won't compile with gcc 4.3
Status: RESOLVED NOT A BUG
Alias: None
Product: kalzium
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Kalzium Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-03-27 08:12 UTC by Mark Constable
Modified: 2008-06-01 23:00 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Constable 2008-03-27 08:12:33 UTC
Version:            (using Devel)
Installed from:    Compiled sources
Compiler:          gcc 4.3.0 
OS:                Linux

In GCC 4.3, the C++ header dependencies have been cleaned up.
The advantage of this is that programs will compile faster.
The downside is that you actually need to directly #include
everything you use (but you really should do this anyway,
otherwise your program won't work with any compiler other
than GCC).  There's some more information about this at
http://www.cyrius.com/journal/2007/05/10#gcc-4.3-include

[  5%] Built target kwordquiz-handbook                                                                                                          
[  5%] Building CXX object kalzium/libavogadro-kalzium/src/CMakeFiles/avogadro-kalzium.dir/color.o                                              
In file included from /usr/include/openbabel-2.0/openbabel/mol.h:45,                                                                            
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/../../src/primitive.h:31,  
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/primitive.h:2,             
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/../../src/engine.h:30,     
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/engine.h:2,                
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/../../src/glwidget.h:31,   
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/glwidget.h:2,              
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/src/camera.cpp:28:                          
/usr/include/openbabel-2.0/openbabel/data.h: In constructor 'OpenBabel::OBElement::OBElement(int, const char*, double, double, int, double, double, double, double, double, double, double, std::string)':                                                                                                                                              
/usr/include/openbabel-2.0/openbabel/data.h:116: error: 'strncpy' was not declared in this scope                                                                            
In file included from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/camera.h:2,                                            
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/../../src/glwidget.h:35,                               
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/glwidget.h:2,                                          
                 from /var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/src/camera.cpp:28:                                                      
/var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/../../src/camera.h: At global scope:                                         
/var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/include/avogadro/../../src/camera.h:138: warning: type qualifiers ignored on function return type                                                                                                                                                                         
/var/abs/local/eth-os/kde/kdeedu/src/kdeedu-4.1.0/kalzium/libavogadro-kalzium/src/camera.cpp:124: warning: type qualifiers ignored on function return type                  
make[2]: *** [kalzium/libavogadro-kalzium/src/CMakeFiles/avogadro-kalzium.dir/camera.o] Error 1                                                                             
make[2]: *** Waiting for unfinished jobs....                                                                                                                                
[  5%] Generating kalziumuiwidgets.cpp                                                                                                                                      
[  5%] Generating kalziumuiwidgets.moc                                                                                                                                      
Scanning dependencies of target kalziumuiwidgets                                                                                                                            
[  5%] Building CXX object kalzium/compoundviewer/widgets/CMakeFiles/kalziumuiwidgets.dir/kalziumuiwidgets.o                                                                
Linking CXX shared module ../../../lib/kalziumuiwidgets.so                                                                                                                  
make[1]: *** [kalzium/libavogadro-kalzium/src/CMakeFiles/avogadro-kalzium.dir/all] Error 2                                                                                  
make[1]: *** Waiting for unfinished jobs....                                                                                                                                
[  5%] Built target kalziumuiwidgets                                                                                                                                        
make: *** [all] Error 2
Comment 1 Carsten Niehaus 2008-03-30 15:09:54 UTC
Hello Mark. As I am using GCC 4.2 I cannot confirm. It will have a look at this.
Comment 2 Eckhart Wörner 2008-06-01 23:00:15 UTC
This bug is not in Kalzium, but in the OpenBabel header files (and has already been fixed by the OpenBabel developers).