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

[Bug other/52989] New: Installation error on OS X (arm-eabi) cross-compiler


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52989

             Bug #: 52989
           Summary: Installation error on OS X (arm-eabi) cross-compiler
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: other
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: eblot.ml@gmail.com


While builing/installating GCC: the "make install" command fails to install two
generated files - "linux-crt0" - on OS X host, while building a cross-compiler
version for ARM-EABI target.

The message error looks like the following:

"install:
/usr/local/homebrew/Cellar/gcc-arm-eabi/4.7.0/arm-eabi/lib/fpu/linux-crt0.o: No
such file or directory"

although sometimes "make" simply exits with an "Error 2" error message and no
further info.

I already encountered a similar issue with GCC 4.6.3, never with previous
versions (4.6.0, 4.6.1 and 4.6.2 are ok) using the very same "configure" option
switches on the very same host. 
With 4.6.3 however, there was no usable error message, so I give up trying to
understand the issue. It seems that with 4.7.0, I can obtain a usable error
message from the installation stage.

On my system, the following directories are not created at installation stage,
which in turn triggers the installation failure as "make install" attempts to
copy the built linux-crt0.o files into non-existent destination directories:
 * <prefix>/gcc-arm-eabi/4.7.0/arm-eabi/lib/fpu
 * <prefix>/gcc-arm-eabi/4.7.0/arm-eabi/lib/fpu/interwork

A simple workaround exists: creating the missing destination directories and
restarting "make install" enables the installation stage to complete
successfully.

Host: 

Mac Book Pro Late 2008, Core 2 Duo 8 GiB, Lion 10.7.3 w/ 64 bits kernel
$> uname -a
Darwin arguel.eire 11.3.0 Darwin Kernel Version 11.3.0: Thu Jan 12 18:47:41 PST
2012; root:xnu-1699.24.23~1/RELEASE_X86_64 x86_64
$> echo $SHELL
/bin/bash
$> echo $BASH_VERSION 
3.2.48(1)-release

configure:4034: /usr/bin/llvm-gcc --version >&5
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658)
(LLVM build 2336.1.00)
configure:4034: /usr/bin/llvm-gcc -v >&5
Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.1~22/src/configure
--disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2
--mandir=/share/man --enable-languages=c,objc,c++,obj-c++
--program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/
--with-slibdir=/usr/lib --build=i686-apple-darwin11
--enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.1~22/dst-llvmCore/Developer/usr/local
--program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11
--target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)

Target: arm-eabi (not the linux EABI variant)

Configure option switches:
$ ../configure --prefix=/usr/local/homebrew/Cellar/gcc-arm-eabi/4.7.0
--target=arm-eabi --enable-shared --with-gnu-as --with-gnu-ld --with-newlib
--enable-softfloat --disable-bigendian --disable-fpu --disable-underscore
--enable-multilibs --with-float=soft --enable-interwork --enable-lto
--enable-plugin --with-multilib-list=interwork --with-abi=aapcs
--enable-languages=c,c++ --with-gmp=/usr/local/homebrew/Cellar/gmp/5.0.4
--with-mpfr=/usr/local/homebrew/Cellar/mpfr/3.1.0
--with-mpc=/usr/local/homebrew/Cellar/libmpc/0.9
--with-ppl=/usr/local/homebrew/Cellar/ppl/0.11.2
--with-cloog=/usr/local/homebrew/Cellar/cloog/0.17.0 --enable-cloog-backend=isl
--disable-cloog-version-check
--with-libelf=/usr/local/homebrew/Cellar/libelf/0.8.13
--with-gxx-include-dir=/usr/local/homebrew/Cellar/gcc-arm-eabi/4.7.0/arm-eabi/include
--disable-debug --disable-__cxa_atexit 

Note: destination directory tree /usr/local/homebrew/* is R/W for the current
user. /usr/local/homebrew/Cellar/gcc-arm-eabi/4.7.0 did not exist before
building GCC.

Let me know if you need more information


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