This is the mail archive of the gcc-help@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]

Re: Problems building Binutils-2.25


On 6/8/2015 11:39 AM, Ellis N. Thomas wrote:
> This message concerns problems building binutils - 2.25.
>
> Sorry, I could not see a separate "help" mailing list for binutils, and it seems to be
> a part of the gcc infrastructure.
>
> Please forward if this is not the correct place.
>
> 	Thanks
> 		Ellis Thomas
>
>         Notes on installation of binutils - 2.25
>
> 1	Introduction
>
> 	Already have gcc-4.7.2, but this was built on an older version of
> Mac OS X
>
>  System Version:	Mac OS X 10.5.8 (9L30)
>  Kernel Version:	Darwin 9.8.0
>  >uname -mpv
>  Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386 i386
>
> 	After upgrading Mac OS to OS X Mavericks (Sep 2014)
>   System Version:	OS X 10.9.5 (13F1077)
>   Kernel Version:	Darwin 13.4.0
>   > uname -mpv
> Darwin Kernel Version 13.4.0: Wed Mar 18 16:20:14 PDT 2015; root:xnu-2422.115.14~1/RELEASE_X86_64 x86_64 i386
>
> now planning to upgrade to a later gcc version.  Initially intending to obtain
> gnu "as" because there was a problem concerning "as" during the building of
> gcc-4.7.2, and also when use of gcc-4.7.2 was tried with OS X 10.9.5 at first
> no "as" was available (although the earlier one has been re-instated it is
> possible that it has problems).
>
> 	Trying to build the latest release of GNU binutils - 2.25 from
> http://ftp.gnu.org/gnu/binutils/
> binutils-2.25.tar.gz                23-Dec-2014 10:03   31M  
> binutils-2.25.tar.gz.sig            23-Dec-2014 10:03  194
>
> 	Several problems have arisen as noted below, and the result so far is
> that most of binutils is installed BUT NOT the part actually wanted (as and ld).
>
>
> 2	Build Attempts
> 2.1	Using files as downloaded
>
> 	Created object directory obj/.  Set up path to make gcc-4.7.2 available.
> Tried configure:
> ../binutils-2.25/configure &>../logs/config.log
>
> Seems to be OK.  Ran make: Ran to completion - seems OK - some warnings.
> Ran sudo make install - ran to completion, but no as, gas, or ld in tree below
> /usr/local/
>
> 	Not clear why ld and as have not been built.
>
> 	Re-examined the output from configure: logs/config.log includes:
> checking for version 0.10 of ISL... no
> checking for version 0.11 of ISL... no
> checking for version 0.12 of ISL... no
> *** This configuration is not supported in the following subdirectories:
>      ld gas gprof
>
> 2.2	Adding prerequisites
>
> 	Notes for GCC 4.8.4 include:
> "To enable the Graphite framework for loop optimizations you now need CLooG version 0.18.0 and ISL version 0.11.1. Both can be obtained from the GCC infrastructure directory. The installation manual contains more information about requirements to build GCC"
>
> 	Prerequisites for GCC says: "ISL Library version 0.14 (or 0.12.2)
> Necessary to build GCC with the Graphite loop optimizations. It can be downloaded from ftp://gcc.gnu.org/pub/gcc/infrastructure/ as isl-0.12.2.tar.bz2. If an ISL source distribution is found in a subdirectory of your GCC sources named isl, it will be built together with GCC."
>
> 	Obtained isl-0.14.tar.bz2 from
> ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/infrastructure
>
> 	Reran configure as before, but with isl subdirectory
> ../binutils-2.25/configure &>../logs/config2.log
>
> 	Now says:
> configure: WARNING: using in-tree ISL, disabling version check
> checking for version 0.17.0 of CLooG... no
> checking for version 0.18.0 of CLooG... no
> *** This configuration is not supported in the following subdirectories:
>      ld gas gprof isl
>
> so this will still not work - compiling isl is not supported!
>
> 	Obtained cloog-0.18.1.tar.gz from same place.  (This seems to include
> another ISL.)
>
> 	Reran configure as before, but with cloog subdirectory
> ../binutils-2.25/configure &>../logs/config3.log
>
> 	Now says:
> configure: WARNING: using in-tree ISL, disabling version check
> configure: WARNING: using in-tree CLooG, disabling version check
> *** This configuration is not supported in the following subdirectories:
>      ld gas gprof
>     (Any other directories should still work fine.)
>
>
> 3	Prerequisites
>
> 	The information for how to build binutils is not very clear about
> prerequisites (as specified for gcc for example).
>
> 	The message from configure does not make it clear why it is not
> supported.  There seems to be no other problem identified up to the point of
> the message, now that the "checking for version ... no" ones have been avoided.
> The full text from configure up to the message is at the end.
>
>
> 4	Work Round
>
> 	What can be done to proceed with building binutils?
> 	Do ISL and CLooG need to be installed first, or is there some other
> problem?
>
> 	
> -------------------------------------------------------------------------------
> Output of configure (../logs/config3.log) up to "not supported" message
> -------------------------------------------------------------------------------
> checking build system type... x86_64-apple-darwin13.4.0
> checking host system type... x86_64-apple-darwin13.4.0
> checking target system type... x86_64-apple-darwin13.4.0
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether ln works... yes
> checking whether ln -s works... yes
> checking for a sed that does not truncate output... /usr/bin/sed
> checking for gawk... no
> checking for mawk... no
> checking for nawk... no
> checking for awk... awk
> 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 g++... g++
> checking whether we are using the GNU C++ compiler... yes
> checking whether g++ accepts -g... yes
> checking whether g++ accepts -static-libstdc++ -static-libgcc... yes
> checking for gnatbind... gnatbind
> checking for gnatmake... gnatmake
> checking whether compiler driver understands Ada... yes
> checking how to compare bootstrapped objects... cmp --ignore-initial=16 $$f1 $$f2
> checking for objdir... .libs
> configure: WARNING: using in-tree ISL, disabling version check
> configure: WARNING: using in-tree CLooG, disabling version check
> *** This configuration is not supported in the following subdirectories:
>      ld gas gprof
>     (Any other directories should still work fine.)
> ...
> -------------------------------------------------------------------------------
>
> ENT/ 8-Jun-2015
>
If you don't want ISL or Cloog, you must configure gcc with the
corresponding --without options and rebuild it.  DId you not read the
recommendation about download-prerequisites? 
You might still build without ISL or Cloog, if you wish to so
configure.  I have no idea if that can be recommended on your platform.
If you install gcc with some package manager, you would hope that it
would make available the corresponding components.  However, you will
need to heed download-prerequisites if building a gcc which requires
newer ones than your OS provides.
I suppose it's not topical to discuss pros and cons of building binutils
with your standard OS components or with a newer gcc, but in any case
you must have gcc consistent with those other components.

-- 
Tim Prince


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]