Re: binutils gold linker

2015-08-21 Thread Frans van Berckel
On Thu, 2015-08-20 at 19:37 +0200, Frans van Berckel wrote:
 On Thu, 2015-08-20 at 13:10 +0100, Richard Mortimer wrote:
  Frans,
  
  It is not clear from what you wrote but did you rebuild the udev 
  package using the gold linker that you built? From what I have see 
  the problem lies in the build time linking of systemd-udev.
 
 You're right, I didn't rebuild systemd-udev. Because I didn't know, I
 need to. Gonna recompile the systemd packages now. As I did some 
 weeks ago. Or do you have a suggestion how I rebuild systemd-udev 
 only?

Rebuild systemd packages, installed udev  libudev, it updates
initramfs. Reboot and it stays at initrd prompt again.

Thanks,


Frans van Berckel



Re: binutils gold linker

2015-08-21 Thread Richard Mortimer
On 21/08/2015 07:20, Frans van Berckel wrote:
 On Thu, 2015-08-20 at 19:37 +0200, Frans van Berckel wrote:
 On Thu, 2015-08-20 at 13:10 +0100, Richard Mortimer wrote:
 Frans,

 It is not clear from what you wrote but did you rebuild the udev 
 package using the gold linker that you built? From what I have see 
 the problem lies in the build time linking of systemd-udev.

 You're right, I didn't rebuild systemd-udev. Because I didn't know, I
 need to. Gonna recompile the systemd packages now. As I did some 
 weeks ago. Or do you have a suggestion how I rebuild systemd-udev 
 only?
 
 Rebuild systemd packages, installed udev  libudev, it updates
 initramfs. Reboot and it stays at initrd prompt again.
 
Thanks for checking. It looks like Artyom has logged a bug against gold
to get upstream to look at this.

Best Regards

Richard

 Thanks,
 
 
 Frans van Berckel
 



Re: binutils gold linker

2015-08-20 Thread Richard Mortimer
On 19/08/2015 17:39, Frans van Berckel wrote:
 On Wed, 2015-08-19 at 17:39 +0200, Artyom Tarasenko wrote:
 On Wed, Aug 19, 2015 at 5:16 PM, Frans van Berckel 
 fberc...@xs4all.nl wrote:
 On Wed, 2015-08-19 at 16:48 +0200, Artyom Tarasenko wrote:
 
 Now the question is whether git/master gold linker is better than
 2.25.1, or if the test coverage is not large enough. The latter 
 would
 explain why the breakage went unnoticed for more than 6 Months.

 Can you please try to link systemd with your freshly built gold
 linker?

 Sure. It may not be as neat, but with just a # make install?

 I think so. It should be possible to clean the mess afterwards with
 reinstalling dpkgs.
 
 We still having the udev issue. It and up on the initramfs prompt.
 
 I am sure gold it installed in /usr/bin, instead of local. I did a #
 initramfs-update -u, before booting. The power button is what left.
 
 Booting a old kernel, does go further, but theres a udev error as well.

Frans,

It is not clear from what you wrote but did you rebuild the udev package
using the gold linker that you built? From what I have see the problem
lies in the build time linking of systemd-udev.

Regards

Richard.



Re: binutils gold linker

2015-08-20 Thread Frans van Berckel
On Thu, 2015-08-20 at 13:10 +0100, Richard Mortimer wrote:
 On 19/08/2015 17:39, Frans van Berckel wrote:
  
  We still having the udev issue. It and up on the initramfs prompt.
  
  I am sure gold it installed in /usr/bin, instead of local. I did a 
  #
  initramfs-update -u, before booting. The power button is what left.
  
  Booting a old kernel, does go further, but theres a udev error as 
  well.
 
 Frans,
 
 It is not clear from what you wrote but did you rebuild the udev 
 package using the gold linker that you built? From what I have see 
 the problem lies in the build time linking of systemd-udev.

You're right, I didn't rebuild systemd-udev. Because I didn't know, I
need to. Gonna recompile the systemd packages now. As I did some weeks
ago. Or do you have a suggestion how I rebuild systemd-udev only?

Thanks,


Frans van Berckel

  



Re: binutils gold linker

2015-08-19 Thread Frans van Berckel
On Wed, 2015-08-19 at 11:47 +0200, Artyom Tarasenko wrote:
 
 Yeah, gold has a dependency on bfd. But the sequence I suggested
 definitely works:
 
 mkdir binutils-build  cd binutils-build
 ../binutils-gdb/configure  make -j8
 mkdir gold  cd gold
 ../../binutils-gdb/gold/configure  make check-TESTS

../../binutils-gdb/gold/configure --enable-plugins  make check-TESTS

PASS: bootstrap-test
PASS: bootstrap-test-r
PASS: bootstrap-test-treehash-chunksize
==
All 3 tests passed
==

Looks okay to me. Attacking log file [plain txt]

Thanks,

Frans van Berckel

# ../../binutils-gdb/gold/configure --enable-plugins  make check-TESTS

checking build system type... sparc64-unknown-linux-gnu
checking host system type... sparc64-unknown-linux-gnu
checking target system type... sparc64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for nm... nm
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for bison... bison -y
checking for ranlib... ranlib
checking whether ln -s works... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether NLS is requested... yes
checking for catalogs to be installed...  es fi fr id it vi
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking whether byte ordering is bigendian... yes
checking whether static linking works... yes
checking for gcc = 4.1... yes
checking whether gcc supports -fmerge-constants... yes
checking for thread support... yes
checking for glibc = 2.4... yes
checking for omp support... yes
checking for glibc = 2.9... yes
checking for -frandom-seed support... yes
checking for glibc ifunc support... both
Setting warning flags = -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Werror
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking for chsize... no
checking for mmap... yes
checking for pread... yes
checking for ftruncate... yes
checking for ffsll... yes
checking mremap with MREMAP_MAYMOVE... yes
checking whether basename is declared... yes
checking whether ffs is declared... yes
checking whether asprintf is declared... yes
checking whether vasprintf is declared... yes
checking whether snprintf is declared... yes
checking whether vsnprintf is declared... yes
checking whether strverscmp is declared... yes
checking how to run the C++ preprocessor... g++ -E
checking unordered_set usability... no
checking unordered_set presence... no
checking for unordered_set... no
checking unordered_map usability... no
checking unordered_map presence... no
checking for unordered_map... no
checking tr1/unordered_set usability... yes
checking tr1/unordered_set presence... yes
checking for tr1/unordered_set... yes
checking tr1/unordered_map usability... yes
checking tr1/unordered_map presence... yes
checking for tr1/unordered_map... yes
checking ext/hash_map usability... yes
checking ext/hash_map presence... yes
checking for ext/hash_map... yes
checking ext/hash_set usability... yes
checking ext/hash_set presence... yes
checking for ext/hash_set... yes
checking byteswap.h usability... yes
checking byteswap.h presence... yes
checking for byteswap.h... yes
checking windows.h usability... no
checking windows.h presence... no
checking for windows.h... no
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for library containing dlopen... -ldl
checking for mallinfo... yes

Re: binutils gold linker

2015-08-19 Thread Artyom Tarasenko
On Wed, Aug 19, 2015 at 4:18 PM, Frans van Berckel fberc...@xs4all.nl wrote:
 On Wed, 2015-08-19 at 11:47 +0200, Artyom Tarasenko wrote:

 Yeah, gold has a dependency on bfd. But the sequence I suggested
 definitely works:

 mkdir binutils-build  cd binutils-build
 ../binutils-gdb/configure  make -j8
 mkdir gold  cd gold
 ../../binutils-gdb/gold/configure  make check-TESTS

 ../../binutils-gdb/gold/configure --enable-plugins  make check-TESTS

 PASS: bootstrap-test
 PASS: bootstrap-test-r
 PASS: bootstrap-test-treehash-chunksize

Now the question is whether git/master gold linker is better than
2.25.1, or if the test coverage is not large enough. The latter would
explain why the breakage went unnoticed for more than 6 Months.

Can you please try to link systemd with your freshly built gold linker?

Artyom

-- 
Regards,
Artyom Tarasenko

SPARC and PPC PReP under qemu blog: http://tyom.blogspot.com/search/label/qemu



Re: binutils gold linker

2015-08-19 Thread Frans van Berckel
On Wed, 2015-08-19 at 16:48 +0200, Artyom Tarasenko wrote:
 On Wed, Aug 19, 2015 at 4:18 PM, Frans van Berckel 
 fberc...@xs4all.nl wrote:
  
  ../../binutils-gdb/gold/configure --enable-plugins  make check
  -TESTS
  
  PASS: bootstrap-test
  PASS: bootstrap-test-r
  PASS: bootstrap-test-treehash-chunksize
 
 Now the question is whether git/master gold linker is better than
 2.25.1, or if the test coverage is not large enough. The latter would
 explain why the breakage went unnoticed for more than 6 Months.
 
 Can you please try to link systemd with your freshly built gold 
 linker?

Sure. It may not be as neat, but with just a # make install? I am able
to boot the sparc64 chroot, because it's on the /media/disk5 partition.

Thanks,


Frans van Berckel






Re: binutils gold linker

2015-08-19 Thread Artyom Tarasenko
On Wed, Aug 19, 2015 at 5:16 PM, Frans van Berckel fberc...@xs4all.nl wrote:
 On Wed, 2015-08-19 at 16:48 +0200, Artyom Tarasenko wrote:
 On Wed, Aug 19, 2015 at 4:18 PM, Frans van Berckel 
 fberc...@xs4all.nl wrote:
 
  ../../binutils-gdb/gold/configure --enable-plugins  make check
  -TESTS
 
  PASS: bootstrap-test
  PASS: bootstrap-test-r
  PASS: bootstrap-test-treehash-chunksize

 Now the question is whether git/master gold linker is better than
 2.25.1, or if the test coverage is not large enough. The latter would
 explain why the breakage went unnoticed for more than 6 Months.

 Can you please try to link systemd with your freshly built gold
 linker?

 Sure. It may not be as neat, but with just a # make install?

I think so. It should be possible to clean the mess afterwards with
reinstalling dpkgs.

Artyom

-- 
Regards,
Artyom Tarasenko

SPARC and PPC PReP under qemu blog: http://tyom.blogspot.com/search/label/qemu



Re: binutils gold linker

2015-08-19 Thread Frans van Berckel
On Wed, 2015-08-19 at 17:39 +0200, Artyom Tarasenko wrote:
 On Wed, Aug 19, 2015 at 5:16 PM, Frans van Berckel 
 fberc...@xs4all.nl wrote:
  On Wed, 2015-08-19 at 16:48 +0200, Artyom Tarasenko wrote:

   Now the question is whether git/master gold linker is better than
   2.25.1, or if the test coverage is not large enough. The latter 
   would
   explain why the breakage went unnoticed for more than 6 Months.
   
   Can you please try to link systemd with your freshly built gold
   linker?
  
  Sure. It may not be as neat, but with just a # make install?
 
 I think so. It should be possible to clean the mess afterwards with
 reinstalling dpkgs.

We still having the udev issue. It and up on the initramfs prompt.

I am sure gold it installed in /usr/bin, instead of local. I did a #
initramfs-update -u, before booting. The power button is what left.

Booting a old kernel, does go further, but theres a udev error as well.

Thanks,


Frans van Berckel





Re: binutils gold linker

2015-08-19 Thread Knut Petter Ølberg



 Yeah, gold has a dependency on bfd. But the sequence I suggested
 definitely works:

 So I have to build bfd first (couldn't find it in the repos...)?

-kp


Re: binutils gold linker

2015-08-19 Thread Frans van Berckel
On Wed, 2015-08-19 at 18:37 +0200, Knut Petter Ølberg wrote:
  
  
  Yeah, gold has a dependency on bfd. But the sequence I suggested
  definitely works:
  
  
 So I have to build bfd first (couldn't find it in the repos...)?

Thats because its part of the binutils package :-)

Thanks,

Frans van Berckel



Re: binutils gold linker

2015-08-19 Thread Artyom Tarasenko
On Wed, Aug 19, 2015 at 6:37 PM, Knut Petter Ølberg kpolb...@gmail.com wrote:


 Yeah, gold has a dependency on bfd. But the sequence I suggested
 definitely works:

 So I have to build bfd first (couldn't find it in the repos...)?

As you see in the sequence there are two  configure  make calls

   mkdir binutils-build  cd binutils-build
   ../binutils-gdb/configure  make -j8

#  ^ this ones builds bfd and some other stuff

  mkdir gold  cd gold
  ../../binutils-gdb/gold/configure  make check-TESTS

#  and this one  builds gold and runs the tests.

But as Frans wrote, the tests are passing. We have to construct a more
complex test case.
I tried building helloworld.c with bfd and gold, and they both work.

So the bug must be really not that obvious as I hoped.

-- 
Regards,
Artyom Tarasenko

SPARC and PPC PReP under qemu blog: http://tyom.blogspot.com/search/label/qemu



Re: binutils gold linker

2015-08-19 Thread Knut Petter Ølberg


 As you see in the sequence there are two  configure  make calls

mkdir binutils-build  cd binutils-build
../binutils-gdb/configure  make -j8

 #  ^ this ones builds bfd and some other stuff

   mkdir gold  cd gold
   ../../binutils-gdb/gold/configure  make check-TESTS

 #  and this one  builds gold and runs the tests.

 But as Frans wrote, the tests are passing. We have to construct a more
 complex test case.
 I tried building helloworld.c with bfd and gold, and they both work.

 So the bug must be really not that obvious as I hoped.

 I must have been blind, I didn't notice the first one failed on a
dependency on flex.

After that, it is as you say.

PASS: bootstrap-test
PASS: bootstrap-test-r
PASS: bootstrap-test-treehash-chunksize

-kp


Re: binutils gold linker

2015-08-19 Thread Frans van Berckel
On Tue, 2015-08-18 at 20:38 +0200, Frans van Berckel wrote:
 On Tue, 2015-08-18 at 17:20 +0200, Artyom Tarasenko wrote:
  Hi Knut Petter,
  
  Can you please do the following:
git clone git://sourceware.org/git/binutils-gdb.git
mkdir binutils-build  cd binutils-build
../binutils-gdb/configure  make -j8
mkdir gold  cd gold
../../binutils-gdb/gold/configure  make check-TESTS
  
  And post here the test report generated? Should be something like
  make[1]: Entering directory `/projects/binutils-build/gold'
  PASS: bootstrap-test
  gcctestdir2-r/ld -o libgold-2-r.o -r --whole-archive libgold.a
  ...
 
 Build binutils with your script. But make check-TESTS or make check
 exits with (a config) error? Attaching gold-make-check.log [plain 
 txt]
 
 g++ -W -Wall-Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
 -fmerge-constants -g -O2 -Bgcctestdir/  -o large_symbol_alignment
 large_symbol_alignment.o  -ldl 
 
 gcctestdir/ld: -plugin: unknown option
 gcctestdir/ld: use the --help option for usage information
 collect2: error: ld returned 1 exit status
 Makefile:3513: recipe for target 'large_symbol_alignment' failed
 
 Good to know (sparc64) git is old, and not installable.

Did some Google search on plugin and found 1 + 2.

https://gcc.gnu.org/ml/fortran/2015-02/msg00043.html
http://llvm.org/docs/GoldPlugin.html

So, gonna test, if git (without subversion, git-svn) is build ...

# git clone git://sourceware.org/git/binutils-gdb.git
# mkdir binutils-build  cd binutils-build
# ../binutils-gdb/configure --enable-gold --enable-plugins  make -j8
# cd gold
# make check-TESTS

Theres no need for the gold configure  build part, if i am well?

Thanks,


Frans van Berckel



Re: binutils gold linker

2015-08-19 Thread Knut Petter Ølberg


  # git clone git://sourceware.org/git/binutils-gdb.git
  # mkdir binutils-build  cd binutils-build
  # ../binutils-gdb/configure --enable-gold --enable-plugins  make -j8
  # cd gold
  # make check-TESTS
 


 I'm currently stuck here...

make[1]: Entering directory `/root/src/binutils-build/gold'
g++ -DHAVE_CONFIG_H -I. -I../../binutils-gdb/gold
 -I../../binutils-gdb/gold -I../../binutils-gdb/gold/../include
-I../../binutils-gdb/gold/../elfcpp
-DLOCALEDIR=\/usr/local/share/locale\ -DBINDIR=\/usr/local/bin\
-DTOOLBINDIR=\/usr/local//bin\ -DTOOLLIBDIR=\/usr/local//lib\   -W
-Wall-Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-frandom-seed=options.o -I../../binutils-gdb/gold/../zlib -g -O2 -MT
options.o -MD -MP -MF .deps/options.Tpo -c -o options.o
../../binutils-gdb/gold/options.cc
../../binutils-gdb/gold/options.cc:35:27: fatal error: ../bfd/bfdver.h: No
such file or directory
compilation terminated.
make[1]: *** [options.o] Error 1
make[1]: Leaving directory `/root/src/binutils-build/gold'
make: *** [check-TESTS] Error 2

-kp
checking build system type... sparc64-unknown-linux-gnu
checking host system type... sparc64-unknown-linux-gnu
checking target system type... sparc64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for nm... nm
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for bison... bison -y
checking for ranlib... ranlib
checking whether ln -s works... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether NLS is requested... yes
checking for catalogs to be installed...  es fi fr id it vi
checking whether NLS is requested... yes
checking for msgfmt... no
checking for gmsgfmt... :
checking for xgettext... no
checking for msgmerge... no
checking whether byte ordering is bigendian... yes
checking whether static linking works... yes
checking for gcc = 4.1... yes
checking whether gcc supports -fmerge-constants... yes
checking for thread support... yes
checking for glibc = 2.4... yes
checking for omp support... yes
checking for glibc = 2.9... yes
checking for -frandom-seed support... yes
checking for glibc ifunc support... both
Setting warning flags = -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Werror
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking for chsize... no
checking for mmap... yes
checking for pread... yes
checking for ftruncate... yes
checking for ffsll... yes
checking mremap with MREMAP_MAYMOVE... yes
checking whether basename is declared... yes
checking whether ffs is declared... yes
checking whether asprintf is declared... yes
checking whether vasprintf is declared... yes
checking whether snprintf is declared... yes
checking whether vsnprintf is declared... yes
checking whether strverscmp is declared... yes
checking how to run the C++ preprocessor... g++ -E
checking unordered_set usability... no
checking unordered_set presence... no
checking for unordered_set... no
checking unordered_map usability... no
checking unordered_map presence... no
checking for unordered_map... no
checking tr1/unordered_set usability... yes
checking tr1/unordered_set presence... yes
checking for tr1/unordered_set... yes
checking tr1/unordered_map usability... yes
checking tr1/unordered_map presence... yes
checking for tr1/unordered_map... yes
checking ext/hash_map usability... yes
checking ext/hash_map presence... yes
checking for ext/hash_map... yes
checking ext/hash_set usability... yes
checking ext/hash_set presence... yes
checking for ext/hash_set... yes
checking byteswap.h usability... yes
checking 

Re: binutils gold linker

2015-08-19 Thread Artyom Tarasenko
On Wed, Aug 19, 2015 at 9:15 AM, Frans van Berckel fberc...@xs4all.nl wrote:
 On Tue, 2015-08-18 at 20:38 +0200, Frans van Berckel wrote:
 On Tue, 2015-08-18 at 17:20 +0200, Artyom Tarasenko wrote:
  Hi Knut Petter,
 
  Can you please do the following:
git clone git://sourceware.org/git/binutils-gdb.git
mkdir binutils-build  cd binutils-build
../binutils-gdb/configure  make -j8
mkdir gold  cd gold
../../binutils-gdb/gold/configure  make check-TESTS
 
  And post here the test report generated? Should be something like
  make[1]: Entering directory `/projects/binutils-build/gold'
  PASS: bootstrap-test
  gcctestdir2-r/ld -o libgold-2-r.o -r --whole-archive libgold.a
  ...

 Build binutils with your script. But make check-TESTS or make check
 exits with (a config) error? Attaching gold-make-check.log [plain
 txt]

 g++ -W -Wall-Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
 -fmerge-constants -g -O2 -Bgcctestdir/  -o large_symbol_alignment
 large_symbol_alignment.o  -ldl

 gcctestdir/ld: -plugin: unknown option
 gcctestdir/ld: use the --help option for usage information
 collect2: error: ld returned 1 exit status
 Makefile:3513: recipe for target 'large_symbol_alignment' failed

 Good to know (sparc64) git is old, and not installable.

 Did some Google search on plugin and found 1 + 2.

 https://gcc.gnu.org/ml/fortran/2015-02/msg00043.html
 http://llvm.org/docs/GoldPlugin.html

 So, gonna test, if git (without subversion, git-svn) is build ...

I've used a x86_64 machine to fetch it. Are you running sparc64
chrooted from wheezy?
I suppose the wheezy git should be working.

 # git clone git://sourceware.org/git/binutils-gdb.git
 # mkdir binutils-build  cd binutils-build
 # ../binutils-gdb/configure --enable-gold --enable-plugins  make -j8
 # cd gold
 # make check-TESTS

 Theres no need for the gold configure  build part, if i am well?

Probably. I did it as described in the binutils readme file, which
doesn't mention --enable-gold option, and was surprised that it was
not build at all.

Artyom

-- 
Regards,
Artyom Tarasenko

SPARC and PPC PReP under qemu blog: http://tyom.blogspot.com/search/label/qemu



Re: binutils gold linker

2015-08-18 Thread Frans van Berckel
On Tue, 2015-08-18 at 17:20 +0200, Artyom Tarasenko wrote:
 Hi Knut Petter,
 
 Can you please do the following:
   git clone git://sourceware.org/git/binutils-gdb.git
   mkdir binutils-build  cd binutils-build
   ../binutils-gdb/configure  make -j8
   mkdir gold  cd gold
   ../../binutils-gdb/gold/configure  make check-TESTS
 
 And post here the test report generated? Should be something like
 make[1]: Entering directory `/projects/binutils-build/gold'
 PASS: bootstrap-test
 gcctestdir2-r/ld -o libgold-2-r.o -r --whole-archive libgold.a
 ...

Build binutils with your script. But make check-TESTS or make check
exits with (a config) error? Attaching gold-make-check.log [plain txt]

g++ -W -Wall-Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-fmerge-constants -g -O2 -Bgcctestdir/  -o large_symbol_alignment
large_symbol_alignment.o  -ldl 

gcctestdir/ld: -plugin: unknown option
gcctestdir/ld: use the --help option for usage information
collect2: error: ld returned 1 exit status
Makefile:3513: recipe for target 'large_symbol_alignment' failed

Good to know (sparc64) git is old, and not installable.

Thanks,


Frans van Berckelroot@deblnxsrv230:/usr/src/binutils/binutils-build/gold# make check
Making check in po
make[1]: Entering directory '/usr/src/binutils/binutils-build/gold/po'
file=`echo es | sed 's,.*/,,'`.gmo \
   rm -f $file  PATH=../src:$PATH /usr/bin/msgfmt -o $file ../../../binutils-gdb/gold/po/es.po
file=`echo fi | sed 's,.*/,,'`.gmo \
   rm -f $file  PATH=../src:$PATH /usr/bin/msgfmt -o $file ../../../binutils-gdb/gold/po/fi.po
file=`echo fr | sed 's,.*/,,'`.gmo \
   rm -f $file  PATH=../src:$PATH /usr/bin/msgfmt -o $file ../../../binutils-gdb/gold/po/fr.po
file=`echo id | sed 's,.*/,,'`.gmo \
   rm -f $file  PATH=../src:$PATH /usr/bin/msgfmt -o $file ../../../binutils-gdb/gold/po/id.po
file=`echo it | sed 's,.*/,,'`.gmo \
   rm -f $file  PATH=../src:$PATH /usr/bin/msgfmt -o $file ../../../binutils-gdb/gold/po/it.po
file=`echo vi | sed 's,.*/,,'`.gmo \
   rm -f $file  PATH=../src:$PATH /usr/bin/msgfmt -o $file ../../../binutils-gdb/gold/po/vi.po
make[1]: Leaving directory '/usr/src/binutils/binutils-build/gold/po'
Making check in testsuite
make[1]: Entering directory '/usr/src/binutils/binutils-build/gold/testsuite'
(for i in `seq 1 7`; do \
   echo int var_$i __attribute__((section(\section_$i\))) = $i;; \
 done)  many_sections_define.h.tmp
mv -f many_sections_define.h.tmp many_sections_define.h
(for i in `seq 1 1000 7`; do \
   echo assert(var_$i == $i);; \
 done)  many_sections_check.h.tmp
mv -f many_sections_check.h.tmp many_sections_check.h
make  check-am
make[2]: Entering directory '/usr/src/binutils/binutils-build/gold/testsuite'
make  libgoldtest.a object_unittest binary_unittest leb128_unittest icf_virtual_function_folding_test large_symbol_alignment basic_test basic_pic_test eh_test basic_static_test basic_static_pic_test basic_pie_test constructor_test constructor_static_test two_file_test two_file_pic_test two_file_static_test two_file_shared_1_test two_file_shared_2_test two_file_shared_1_pic_2_test two_file_shared_2_pic_1_test two_file_same_shared_test two_file_separate_shared_12_test two_file_separate_shared_21_test two_file_relocatable_test two_file_pie_test pie_copyrelocs_test weak_unresolved_symbols_test  two_file_strip_test two_file_same_shared_strip_test common_test_1 common_test_2 exception_test exception_shared_1_test exception_shared_2_test exception_same_shared_test exception_separate_shared_12_test exception_separate_shared_21_test exception_static_test weak_test weak_undef_test weak_undef_test_2  weak_alias_test weak_plt copy_test tls_test tls_pic_test tls_pie_test tls_pie_pic_test tls_shared_test tls_shared_ie_test tls_shared_gd_to_ie_test   tls_static_test tls_static_pic_test  many_sections_test many_sections_r_test initpri1 initpri2 initpri3a flagstest_o_specialfile flagstest_compress_debug_sections_none flagstest_compress_debug_sections flagstest_compress_debug_sections_and_build_id_tree flagstest_compress_debug_sections_gnu flagstest_compress_debug_sections_gabi flagstest_o_specialfile_and_compress_debug_sections flagstest_o_ttext_1 ver_test ver_test_2 ver_test_6 ver_test_8 ver_test_9 ver_test_11 ver_test_12 protected_1 protected_2 relro_test relro_now_test relro_strip_test relro_script_test script_test_1 script_test_2 justsyms justsyms_exec binary_test script_test_3 tls_phdrs_script_test tls_script_test script_test_11 script_test_12 script_test_12i dynamic_list_2 thin_archive_test_1 thin_archive_test_2   exclude_libs_test local_labels_test discard_locals_test  permission_test searched_file_test ifuncmain1static ifuncmain1picstatic ifuncmain1 ifuncmain1pic ifuncmain1vis ifuncmain1vispic ifuncmain1staticpic ifuncmain1pie ifuncmain1vispie ifuncmain1staticpie ifuncmain2static ifuncmain2picstatic ifuncmain2 ifuncmain2pic ifuncmain3 ifuncmain4static ifuncmain4picstatic ifuncmain4 ifuncmain5static ifuncmain5picstatic ifuncmain5 ifuncmain5pic 

binutils gold linker

2015-08-18 Thread Artyom Tarasenko
Hi Knut Petter,


 Sounds fair enough. In any case, I have a running installation which I can
 add more cores/memory to whenever it would be usable. So just let me know.

Can you please do the following:
  git clone git://sourceware.org/git/binutils-gdb.git
  mkdir binutils-build  cd binutils-build
  ../binutils-gdb/configure  make -j8
  mkdir gold  cd gold
  ../../binutils-gdb/gold/configure  make check-TESTS

And post here the test report generated? Should be something like
make[1]: Entering directory `/projects/binutils-build/gold'
PASS: bootstrap-test
gcctestdir2-r/ld -o libgold-2-r.o -r --whole-archive libgold.a
...

Artyom

-- 
Regards,
Artyom Tarasenko

SPARC and PPC PReP under qemu blog: http://tyom.blogspot.com/search/label/qemu