On 4/12/12 8:24 AM, Edward d'Auvergne wrote: > Hi, > > I am the lead developer of the project relax > (http://pdb.finkproject.org/pdb/package.php/relax-py27, > http://www.nmr-relax.com) and am having a problem installing the > xmgrace software (http://pdb.finkproject.org/pdb/package.php/grace). > The Xmgrace graphing software is used by relax to display certain > results. The installation of relax pulled in gcc-4.6, as relax > requires wxPython, which requires wxGTK, etc. The problem is that > xmgrace depends on fftw-shlibs which in turn depend on gcc-4.4! So > this is an indirect dependency clash. There is no need to install > gcc-4.4 on the system to compile fftw-shlibs when gcc-4.6 is present. > But installing gcc-4.4 removes openmpi-dev which is required by mpi4py > which itself is a relax dependency. Why does fink not detect this and > use the perfectly working gcc-4.6? Because we don't work by detection. We work by prescription because we want packages to build the same way for everybody regardless of what they have installed. > Why does the fftw-shlibs info file > (http://fink.cvs.sourceforge.net/fink/dists/10.4/stable/main/finkinfo/sci/fftw.info?view=markup) > say that gcc44 is a dependency and not just specify a generic gcc > version? Because that doesn't always work. It is often the case that libraries built with gcc4N in turn link to libraries from the particular gcc4N with which they were built, so the general assumption people make when doing packages that use gcc4N is that they must carry a dependency on gcc4N-shlibs. That appears not to be the case here, however. > Cheers, > > Edward > > In any case, the -shlibs packages (containing the libraries) for gcc44 and gcc46 _don't_ clash. When a package's dependency tree winds up bringing in multiple versions of the same library, this can indeed cause annoyances when building the package, such as having to restart the build procedure. However, this typically doesn't lead to any runtime issues.
The real issue here is that fftw is unmaintained and it didn't get updated to use gcc46 instead of gcc44 for builds on OS 10.5 and OS 10.6. I'm assuming you're on one of those, since you didn't say, and because fftw uses gcc46 on OS 10.7 because we banned having an earlier gcc4N there. I have updated fftw for OS 10.5 and 10.6 to use gcc46. -- Alexander Hansen, Ph.D. Fink User Liaison http://finkakh.wordpress.com/2012/02/21/got-job/ ------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2 _______________________________________________ Fink-devel mailing list Fink-devel@lists.sourceforge.net List archive: http://news.gmane.org/gmane.os.apple.fink.devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel