Hi again, Wow, nearly three years, sorry I neglected this bug for so long.
First, to answer your question, this is a problem because it breaks binutils-gold, and because if the required list of libraries changes then there's no way for dependent packages to know that. For example: if my executable A links with and uses symbols in library B, which needs symbols in libraries C and D, the links should look like: A -> B B -> C and D Now if B changes to no longer need D, but need E, then it changes to: A -> B B -> C and E If this weren't the case, if we had: A -> B, C, D then A and every other reverse-depends of B would need to change their makefiles to link with B, C and E in order to build properly. It's much easier for B to change, since the B maintainer knows about the shift in dependencies. Particularly for long and complex chains of dependencies, this can become completely unmanageable if libraries don't link to each other properly. [If A uses symbols in D as well as B, then that's different, it should link with B and D.] dpkg-shlibdeps should be complaining a lot about these missing links as well. There's a new missing link: in 10.4.0, libtrilinos_pytrilinos breaks linking as follows: ============================ Linking step-9 /usr/lib/libtrilinos_pytrilinos.so: error: undefined reference to 'PyDict_SetItem' /usr/lib/libtrilinos_pytrilinos.so: error: undefined reference to 'PyExc_ValueError' /usr/lib/libtrilinos_pytrilinos.so: error: undefined reference to 'PyDict_SetItemString' /usr/lib/libtrilinos_pytrilinos.so: error: undefined reference to 'PyImport_ImportModule' [and 83 more missing symbols] collect2: ld returned 1 exit status make: *** [step-9] Error 1 Please make this change. I'll see if I can get some time to help. -Adam On Fri, 2009-05-22 at 10:05 -0400, Adam C Powell IV wrote: > Hi Christophe, > > Thanks, I understand that the full library list is needed for now, but > would like it to be otherwise. > > Would you accept a patch to link the libraries? It looks like you > generate the shared libs in debian/rules, so I could add something > there. > > I won't have time to do this for a little while, so don't let it hold up > a planned release. > > Thanks, > -Adam > > On Fri, 2009-05-22 at 10:36 +0200, Christophe Prud'homme wrote: > > Adam, > > > > here is the full list of libraries to compile examples for nox > > > > g++ -o ex1 -I/usr/include/trilinos -I/usr/include/mpi -I../../src > > ex1.cpp-ltrilinos_ml -ltrilinos_galeri -ltrilinos_nox > > -ltrilinos_noxepetra -ltrilinos_noxlapack -ltrilinos_anasazi > > -ltrilinos_ifpack -ltrilinos_amesos -ltrilinos_aztecoo > > -ltrilinos_epetraext -ltrilinos_triutils -ltrilinos_epetra > > -ltrilinos_teuchos -lexpat -llapack -lblas -lmpi++ -lmpi > > > > unfortunately you have to come up with the proper list of libs > > > > On Thu, May 21, 2009 at 6:27 PM, Adam C Powell IV <[email protected]> > > wrote: > > > Package: libtrilinos > > > Version: 9.0.2.dfsg-3 > > > > > > A couple of libraries are missing important links, for example: > > > > > > /usr/lib/libtrilinos_teuchos.so: undefined reference to `XML_SetUserData' > > > /usr/lib/libtrilinos_teuchos.so: undefined reference to `XML_ParserCreate' > > > /usr/lib/libtrilinos_teuchos.so: undefined reference to `XML_Parse' > > > /usr/lib/libtrilinos_ml.so: undefined reference to > > > `Galeri::CreateMap(std::basic_string<char, std::char_traits<char>, > > > std::allocator<char> >, Epetra_Comm&, Teuchos::ParameterList&)' > > > /usr/lib/libtrilinos_teuchos.so: undefined reference to > > > `XML_SetElementHandler' > > > /usr/lib/libtrilinos_ml.so: undefined reference to > > > `Galeri::CreateCrsMatrix(std::basic_string<char, std::char_traits<char>, > > > std::allocator<char> >, Epetra_Map const*, Teuchos::ParameterList&)' > > > /usr/lib/libtrilinos_teuchos.so: undefined reference to > > > `XML_SetCharacterDataHandler' > > > > > > So libtrilinos_teuchos.so should link with -lexpat and libtrilinos_ml.so > > > should link with -ltrilinos_galeri . There may be others as well. > > > > > > Thanks, > > > -Adam -- GPG fingerprint: D54D 1AEE B11C CE9B A02B C5DD 526F 01E8 564E E4B6 Engineering consulting with open source tools http://www.opennovation.com/
signature.asc
Description: This is a digitally signed message part

