On Wed, Dec 3, 2008 at 8:36 PM, Eric Blake wrote: > According to Gustavo Seabra on 12/3/2008 7:38 AM: >> 1. Is is safe to remove the old gcc (3.*) packages and replace them by >> symlinks to the new gcc4 executables? > > Read the archives. Dave has mentioned that he is planning on a future > packaging of the gcc packages that use the alternatives package, so that > the symlink management of the name gcc can be done automatically to point > to either gcc-3 or gcc-4. But at the moment, I'm not sure whether the > gcc-4 package requires files provided by the gcc package, in which case > blindly deleting all thing gcc 3.* might break gcc-4. >
Got it. But I was actually just planning on removing the gcc and g77 executables, and make those names point to gcc4 executables instead. It actually has nothing to do with disk space: the whole point is that, when compiling a program, I want to make sure it will *not* use g77, but gfortran instead. The way it is now, I have to specify gfortran-4 as the fortran compiler, say by using FC=/usr/bin/gfortran-4, but one can never be sure exactly how a specific 'configure' program will find its compilers. So, the removal of gcc/g77 executables and replacing by a symlink would remove any possibility for confusion. >> 2. In this case, which executables should I point the symlink to? For >> instance, if I were to replace g77 by a symlink to gfortran, which of >> the 4 gfortran executables should I use: >> >> $ locate gfortran | grep exe >> /bin/gfortran-4.exe >> /bin/i686-pc-cygwin-gfortran-4.exe > > These are identical copies; one is the name preferred when > cross-compiling, the other when doing native compiles. Got it, thanks. > But why worry > about adding symlinks? Why not just rely on what the package gave you, > since it works? Are you really that low on disk space? I suppose they > could be made hardlinks to one another, if someone were to invest the time > into patching setup.exe to attempt to make hardlinks (instead of its > current behavior of blindly creating identical copies, even when the tar > file specifies hardlinks). > >> /usr/bin/gfortran-4.exe >> /usr/bin/i686-pc-cygwin-gfortran-4.exe > > These two are identical to the ones above - you need to read the manual, > and remind yourself that /bin and /usr/bin are mount points that visit the > same directory. Removing /bin/gfortran-4.exe would simultaneously make > /usr/bin/gfortran-4.exe disappear. > >> >> 3. Lastly, just a dumb question: why do we get multiple executables in >> the first place? I noticed that g77 also comes in multiple files: >> $ locate g77 | grep exe >> /bin/g77.exe >> /usr/bin/g77.exe >> >> Is that really necessary? > > Yes, because that's how the default mount points are set up. OK, I had missed the point about /bin and /usr/bin actually pointing to the same directory. Things are a lot clearer now. Thanks, -- Gustavo Seabra Postdoctoral Associate Quantum Theory Project - University of Florida Gainesville - Florida - USA -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/