On Sunday 07 April 2002 22:26, King "Leo (Martin Oberzalek)" wrote: > Hello, > > it's not possible linking a C++ library compiled with g++-2.9x to a C++ > application compiled with g++-3.0. > > We all no the reasons... > > My question is how I should handle this, on debian distributions that > are based on gcc-2.9x? > > I have a C++ library. And I wan't to create debs for g++.2.9x and > g++-3.0. Technically this is no problem. > > I created 4 debs. > > 1) libfoo => shared g++-2.9x library > 2) libfoo-dev => development files (includes, .a, docu) > 3) libfoo-gcc3 => shared g++3.0 library > 4) libfoo-gcc3-dev => development files (.a only, since > include files and docu are the same) > > the g++-2.9x library files are called libfoo.so > for g++-3.0 libfoo-gcc3.so > > The files of both packages are located in /usr/lib > > So if I wanna link an programm with the gcc-3.0 version, -lfoo-gcc3 has > to be used and for gcc-2.9x, -lfoo. > > Are there any better ideas? > No, not really. One thing that I could imagine would be the dynamic linker auto-picking the lib with the proper ABI. Another usefule feature would be if the autotools could be extended to that extent.
However, what we really need is a more generic naming-scheme like <libname><interface-version>-<compilername><ABI-version>.so The advantage would be that we would have prepared support for any compiler, there are more than just g++ 2.x and 3.x[1]. Also, to provide some stability for software-developers, I would suppose moving that naming-scheme to the FHS[2]. uli [1]: Yes, I know that some people will not move a finger to provide proper infrastructure for eg Intel's compiler. However, providing a generic framework will enable a smooth upgrade to g++ 3.1 and other distros that are less reluctant to include non-free software will be more motivated to share that scheme. [2]: Is there anyone here who is following their development ? I wouldn't like to crash in there unprepared with such a proposal .... -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]