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: Efraim Flashner
Subject: Re: 23/33: gnu: commencement: gcc-boot0: Build fix for the Hurd.
Date: Wed, 11 Mar 2020 15:14:53 +0000
User-agent: K-9 Mail for Android


On March 11, 2020 2:27:37 PM UTC, Jan Nieuwenhuizen <address@hidden> wrote:
>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
>

If you're using gcc-7 as the bootstrap gcc for the Hurd then IMO you should go 
ahead and either use gcc-7 or gcc for the libstdc++-boot0
-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.



reply via email to

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