This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Nathanael, your patch introduced the problem mentioned below in config/t-slibgcc-elf-ver. Can you approve the patch or propose a better solution, please? Andreas Nicolas Roche <roche@act-europe.fr> writes: > I am trying to build gcc 3.5 on x86_64 linux and during the install of > the libgcc (shared) i have the following problem: > > /don.a/gnatmail-x/build-don/../build-don/gnat-5.03h-x86_64-pc-linux-gnu-bin/lib/../lib64; /usr/bin/install -c -m 644 libgcc_s.so.1 /don.a/gnatmail-x/build-don/. > ./build-don/gnat-5.03h-x86_64-pc-linux-gnu-bin/lib/../lib64/libgcc_s.so.1; rm -f /don.a/gnatmail-x/build-don/../build-don/gnat-5.03h-x86_64-pc-linux-gnu-bin/lib > /../lib64/libgcc_s.so; ln -s libgcc_s.so.1 /don.a/gnatmail-x/build-don/../build-don/gnat-5.03h-x86_64-pc-linux-gnu-bin/lib/../lib64/libgcc_s.so > /bin/sh: line 1: /don.a/gnatmail-x/build-don/../build-don/gnat-5.03h-x86_64-pc-linux-gnu-bin/lib/../lib64: No such file or directory > /usr/bin/install: cannot create regular file `/don.a/gnatmail-x/build-don/../build-don/gnat-5.03h-x86_64-pc-linux-gnu-bin/lib/../lib64/libgcc_s.so.1': No such f > ile or directory > ln: creating symbolic link `/don.a/gnatmail-x/build-don/../build-don/gnat-5.03h-x86_64-pc-linux-gnu-bin/lib/../lib64/libgcc_s.so' to `libgcc_s.so.1': No such fi > le or directory > make[2]: *** [install] Error 1 > make[2]: Leaving directory `/don.a/gnatmail-x/build-don/obj/gcc' > make[1]: *** [install-multilib] Error 2 > make[1]: Leaving directory `/don.a/gnatmail-x/build-don/obj/gcc' > make: *** [install-gcc] Error 2 > > it seems that the problem comes from the followiong patch: > diff -c -r1.5 -r1.6 > *** t-slibgcc-elf-ver 9 Jan 2003 08:00:39 -0000 1.5 > --- t-slibgcc-elf-ver 7 Feb 2004 23:45:22 -0000 1.6 > *************** > *** 19,25 **** > # $(slibdir) double quoted to protect it from expansion while building > # libgcc.mk. We want this delayed until actual install time. > SHLIB_INSTALL = \ > ! $$(SHELL) $$(srcdir)/mkinstalldirs $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \ > $(INSTALL_DATA) $(SHLIB_NAME) \ > $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \ > rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \ > --- 19,25 ---- > # $(slibdir) double quoted to protect it from expansion while building > # libgcc.mk. We want this delayed until actual install time. > SHLIB_INSTALL = \ > ! $$(mkinstalldirs) $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \ > $(INSTALL_DATA) $(SHLIB_NAME) \ > $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \ > rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \ > > The direct reference to mkinstalldirs has been replaced by a var. So > in libgcc.mk we have > $(mkinstalldirs) $(DESTDIR)$(slibdir)/../lib > > But this var is not passed when calling make -f libgcc.mk install. So that's why lib64 > subdir is not created (see the first line of my build log). The problem can appear on > other platforms if the subdir for the slibgcc is not created before and depending on the > value of SHLIB_INSTALL > > So I would like to submit the following patch: > << > Index: Makefile.in > =================================================================== > RCS file: /cvs/gcc/gcc/gcc/Makefile.in,v > retrieving revision 1.1253 > diff -c -3 -p -r1.1253 Makefile.in > *** Makefile.in 20 Feb 2004 04:19:31 -0000 1.1253 > --- Makefile.in 23 Feb 2004 14:18:51 -0000 > *************** install-libgcc: libgcc.mk libgcc.a libgc > *** 3010,3015 **** > --- 3010,3016 ---- > CFLAGS="$(CFLAGS) $(WARN_CFLAGS)" \ > CONFIG_H="$(TCONFIG_H)" \ > MAKEOVERRIDES= \ > + mkinstalldirs='$(mkinstalldirs)' \ > -f libgcc.mk install > > # Install multiple versions of libgcc.a, libgcov.a. > *************** install-multilib: stmp-multilib installd > *** 3018,3023 **** > --- 3019,3025 ---- > CFLAGS="$(CFLAGS) $(WARN_CFLAGS)" \ > CONFIG_H="$(CONFIG_H)" \ > MAKEOVERRIDES= \ > + mkinstalldirs='$(mkinstalldirs)' \ > -f libgcc.mk install > > # Install all the header files built in the include subdirectory. >>> > > I hope it is the right way to fix this... > > the ChangeLog entry is: > > 2004-02-23 Roche Nicolas <roche@act-europe.fr> > * Makefile.in (install-libgcc, install-multilib): > Pass mkinstalldirs var to libgcc.mk Andreas -- Andreas Jaeger, aj@suse.de, http://www.suse.de/~aj SuSE Linux AG, Maxfeldstr. 5, 90409 Nürnberg, Germany GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126
Attachment:
pgp00000.pgp
Description: PGP signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |