guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 23/33: gnu: commencement: gcc-boot0: Build fix for the Hurd.


From: Jan Nieuwenhuizen
Subject: Re: 23/33: gnu: commencement: gcc-boot0: Build fix for the Hurd.
Date: Wed, 11 Mar 2020 15:27:37 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)

Jan Nieuwenhuizen writes:

> Efraim Flashner writes:
>
>> On Tue, Mar 10, 2020 at 10:13:37AM +0100, Ludovic Courtès wrote:
>>> address@hidden skribis:
>>> 
>>> > commit 7a57ca758c590742b63100944f07fddb7290f797
>>> > Author: Jan Nieuwenhuizen <address@hidden>
>>> > AuthorDate: Sun Mar 1 13:45:42 2020 +0100
>>> >
>>> >     gnu: commencement: gcc-boot0: Build fix for the Hurd.
>>> >     
>>> >     Fixes:
>>> >         g++   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE   
>>> > -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall 
>>> > -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute 
>>> > -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros 
>>> > -Wno-overlength-strings   -DHAVE_CONFIG_H -DGENERATOR_FILE -fno-PIE 
>>> > -static-libstdc++ -static-libgcc 
>>> > -Wl,-rpath=/gnu/store/vp2id82a597p119b3wyhhkhd467wvn78-glibc-bootstrap-0/lib
>>> >  -Wl,-dynamic-linker -Wl,/gnu/store/vp2id82a597p119b3w [...]
>>> >             build/genmddeps.o build/read-md.o build/errors.o 
>>> > ../build-i586-unknown-gnu/libiberty/libiberty.a
>>> >         
>>> > /gnu/store/jk3kx5jwjs9m60svzk6sz79bf0w33l91-binutils-cross-boot0-2.34/bin/ld:
>>> >  build/read-md.o: in function `md_reader::~md_reader()':
>>> >         
>>> > /tmp/guix-build-gcc-cross-boot0-7.5.0.drv-0/build/gcc/../../gcc-7.5.0/gcc/read-md.c:1049:
>>> >  undefined reference to `operator delete(void*, unsigned int)'
>>> >     
>>> >     This raises the question: Should libstdc++-boot0 (v4.9) be sufficient 
>>> > to build
>>> >     gcc-boot0 (v7.5.0)?
>>> 
>>> Hmm?  :-)
>>> 
>>> >     * gnu/packages/commencement.scm (gcc-boot0): Add static library path.
>>> 
>>> >                 `(,(string-append "LDFLAGS="
>>> > +                                 (if ,(hurd-system?)
>>> > +                                     (string-append
>>> > +                                      "-L" (assoc-ref %build-inputs 
>>> > "gcc") "/lib ")
>>> > +                                     "")
>>> 
>>> Could you add a comment saying that this is to allow the ‘delete’
>>> operator to be found?  Weird.

OK!  Yes, I'm reverting to this scenario.  I'm afraid some shared
library doesn't get built and that that's where it usually finds
`delete'.

>>> That’s it, thanks for the great work!
>
> ... I agree, however trying without this and Efraim's patch instead first.
>
>> With the bootstrapping efforts going around there's a couple of patches
>> floating around to change the gcc version for libstdc++-boot0. I've
>> tested the following patch, which also prepares the way for any other
>> future supported platforms.
>
> That looks nice; thanks -- I have added i586-gnu and am trying if that
> works for me.

Well, Marius already convinced you it was a bad idea; but sadly it
didn't work for my hurd problem;  I got

--8<---------------cut here---------------start------------->8---
libtool: compile:  g++ 
-I/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/build/include/ 
-I/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/build/include 
-I/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/libstdc++-v3/libsupc++ 
-fPIC -DPIC -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual 
-Wabi -fdiagnostics-show-location=once -ffunction-sections -fdata-sections 
-frandom-seed=compatibility-condvar.lo -std=gnu++11 -c 
../../libstdc++-v3/src/c++11/compatibility-condvar.cc  -fPIC -DPIC 
-D_GLIBCXX_SHARED -o .libs/compatibility-condvar.o
libtool: compile:  g++ 
-I/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/build/include/ 
-I/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/build/include 
-I/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/libstdc++-v3/libsupc++ 
-fPIC -DPIC -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual 
-Wabi -fdiagnostics-show-location=once -ffunction-sections -fdata-sections 
-frandom-seed=compatibility-condvar.lo -std=gnu++11 -c 
../../libstdc++-v3/src/c++11/compatibility-condvar.cc -o 
compatibility-condvar.o >/dev/null 2>&1
make[3]: *** No rule to make target '../src/c++98/libc++98convenience.la', 
needed by 'libstdc++.la'.  Stop.
make[3]: Leaving directory 
'/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/build/src'
make[2]: *** [Makefile:637: all-recursive] Error 1
make[2]: Leaving directory 
'/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/build/src'
make[1]: *** [Makefile:507: all-recursive] Error 1
make[1]: Leaving directory 
'/tmp/guix-build-libstdc++-boot0-5.5.0.drv-0/gcc-5.5.0/build'
make: *** [Makefile:414: all] Error 2
command "make" "-j" "1" failed with status 2
--8<---------------cut here---------------end--------------->8---

another terrible error.  We could use some glibc and gcc developers
helping with out bootstrap, packaging and cross builds!

janneke

-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com



reply via email to

[Prev in Thread] Current Thread [Next in Thread]