LLVM for ARM target

Sorry I used --enable-pic, not --enable-pics. It was a typo.

Akramul

Sorry again, my bad. I actually was using --enable-pics instead of --enable-pic. Now LLVM is being compiled. Hope the last phase llvm-gcc compilation would be a success. Thanks a lot.

Akramul

In the last step after building and installing binutils 2.21 for ARM and LLVM-src, I am trying to build LLVM-GCC. However, I get the repeated system config checking promt. I used the following configuration:

I created a directory called arm_objects and then I write:

$ …/llvm-gcc-4.2/configure --target=arm-linux --program-prefix=llvm- --prefix=/llv
m/arm --enable-pic --disable-optimized --enable-bindings=none --enable-llvm=$PW
D/…/llvm-src --enable-languages=c,c++ --disable-multilib --disable-bootstrap -
-with-sysroot=/llvm/arms/sys-root --with-arch=armv5te --disable-libssp --with-g
nu-ld --with-gnu-as

$ make

when I run make I get the following promt again and again:

CONFIG_SHELL="/bin/sh" /bin/sh ./config.status --recheck
running /bin/sh …/llvm-gcc-4.2/configure --target=arm-linux --program-prefix=
llvm- --prefix=/llvm/arm --disable-optimized --enable-bindings=none --enable-llv
m=/llvm/arm_objects/…/llvm-src --disable-multilib --disable-bootstrap --with-sy
sroot=/llvm/arms/sys-root --enable-languages=c,c++ --no-create --no-recursion
loading cache ./config.cache
checking host system type… i686-pc-cygwin
checking target system type… arm-unknown-linux-gnu
checking build system type… i686-pc-cygwin
checking for a BSD compatible install… (cached) /usr/bin/install -c
checking whether ln works… (cached) yes
checking whether ln -s works… (cached) yes
checking for gcc… (cached) gcc
checking whether the C compiler (gcc ) works… yes
checking whether the C compiler (gcc ) is a cross-compiler… no
checking whether we are using GNU C… (cached) yes
checking whether gcc accepts -g… (cached) yes
checking for gnatbind… (cached) gnatbind
checking whether compiler driver understands Ada… (cached) yes
checking how to compare bootstrapped objects… (cached) cmp --ignore-initial=16
$$f1 $$f2
checking for correct version of gmp.h… yes
checking for correct version of mpfr.h… yes
checking for any version of mpfr.h… yes
*** This configuration is not supported in the following subdirectories:
target-libada gnattools target-libgfortran target-libffi target-zlib target
-libjava zlib target-libobjc target-boehm-gc
(Any other directories should still work fine.)
checking for bison… (cached) bison -y
checking for bison… (cached) bison
checking for gm4… (cached) m4
checking for flex… (cached) flex
checking for flex… (cached) flex
checking for makeinfo… (cached) makeinfo
checking for expect… (cached) expect
checking for runtest… (cached) runtest
checking for i686-pc-cygwin-ar… (cached) ar
checking for i686-pc-cygwin-as… (cached) as
checking for i686-pc-cygwin-dlltool… (cached) dlltool
checking for i686-pc-cygwin-ld… (cached) /usr/lib/gcc/i686-pc-cygwin/4.3.4/…/
…/…/…/i686-pc-cygwin/bin/ld.exe
checking for i686-pc-cygwin-lipo… no
checking for lipo… no
checking for i686-pc-cygwin-nm… (cached) nm
checking for i686-pc-cygwin-ranlib… (cached) ranlib
checking for i686-pc-cygwin-strip… (cached) strip
checking for i686-pc-cygwin-windres… (cached) windres
checking for i686-pc-cygwin-objcopy… (cached) objcopy
checking for i686-pc-cygwin-objdump… (cached) objdump
checking for arm-linux-cc… no
checking for arm-linux-gcc… no
checking for arm-linux-c++… no
checking for arm-linux-g++… no
checking for arm-linux-cxx… no
checking for arm-linux-gxx… no
checking for arm-linux-gcc… no
checking for arm-linux-gcj… no
checking for arm-linux-gfortran… no
checking for ar… no
checking for arm-linux-ar… no
checking for as… no
checking for arm-linux-as… no
checking for dlltool… no
checking for arm-linux-dlltool… no
checking for ld… no
checking for arm-linux-ld… no
checking for lipo… no
checking for arm-linux-lipo… no
checking for nm… no
checking for arm-linux-nm… no
checking for objdump… no
checking for arm-linux-objdump… no
checking for ranlib… no
checking for arm-linux-ranlib… no
checking for strip… no
checking for arm-linux-strip… no
checking for windres… no
checking for arm-linux-windres… no
checking where to find the target ar… pre-installed
checking where to find the target as… pre-installed
checking where to find the target cc… just compiled
checking where to find the target c++… just compiled
checking where to find the target c++ for libstdc++… just compiled
checking where to find the target dlltool… pre-installed
checking where to find the target gcc… just compiled
checking where to find the target gcj… pre-installed
checking where to find the target gfortran… pre-installed
checking where to find the target ld… pre-installed
checking where to find the target lipo… pre-installed
checking where to find the target nm… pre-installed
checking where to find the target objdump… pre-installed
checking where to find the target ranlib… pre-installed
checking where to find the target strip… pre-installed
checking where to find the target windres… pre-installed
checking whether to enable maintainer-specific portions of Makefiles… no

CONFIG_FILES=Makefile CONFIG_HEADERS= /bin/sh ./config.status
creating Makefile
make: Warning: File `…/llvm-gcc-4.2/Makefile.in’ has modification time 2.1e+07
s in the future
CONFIG_SHELL="/bin/sh" /bin/sh ./config.status --recheck
running /bin/sh …/llvm-gcc-4.2/configure --target=arm-linux --program-prefix=
llvm- --prefix=/llvm/arm --disable-optimized --enable-bindings=none --enable-llv
m=/llvm/arm_objects/…/llvm-src --disable-multilib --disable-bootstrap --with-sy
sroot=/llvm/arms/sys-root --enable-languages=c,c++ --no-create --no-recursion
loading cache ./config.cache
checking host system type… i686-pc-cygwin
checking target system type… arm-unknown-linux-gnu
checking build system type… i686-pc-cygwin
checking for a BSD compatible install… (cached) /usr/bin/install -c
checking whether ln works… (cached) yes
checking whether ln -s works… (cached) yes
checking for gcc… (cached) gcc
checking whether the C compiler (gcc ) works… yes
checking whether the C compiler (gcc ) is a cross-compiler… no
checking whether we are using GNU C… (cached) yes
checking whether gcc accepts -g… (cached) yes
checking for gnatbind… (cached) gnatbind
checking whether compiler driver understands Ada… (cached) yes
checking how to compare bootstrapped objects… (cached) cmp --ignore-initial=16
$$f1 $$f2
checking for correct version of gmp.h… yes
checking for correct version of mpfr.h… yes
checking for any version of mpfr.h… yes
*** This configuration is not supported in the following subdirectories:
target-libada gnattools target-libgfortran target-libffi target-zlib target
-libjava zlib target-libobjc target-boehm-gc
(Any other directories should still work fine.)
checking for bison… (cached) bison -y
checking for bison… (cached) bison
checking for gm4… (cached) m4
checking for flex… (cached) flex
checking for flex… (cached) flex
checking for makeinfo… (cached) makeinfo
checking for expect… (cached) expect
checking for runtest… (cached) runtest
checking for i686-pc-cygwin-ar… (cached) ar
checking for i686-pc-cygwin-as… (cached) as
checking for i686-pc-cygwin-dlltool… (cached) dlltool
checking for i686-pc-cygwin-ld… (cached) /usr/lib/gcc/i686-pc-cygwin/4.3.4/…/
…/…/…/i686-pc-cygwin/bin/ld.exe
checking for i686-pc-cygwin-lipo… no
checking for lipo… no
checking for i686-pc-cygwin-nm… (cached) nm
checking for i686-pc-cygwin-ranlib… (cached) ranlib
checking for i686-pc-cygwin-strip… (cached) strip
checking for i686-pc-cygwin-windres… (cached) windres
checking for i686-pc-cygwin-objcopy… (cached) objcopy
checking for i686-pc-cygwin-objdump… (cached) objdump
checking for arm-linux-cc… no
checking for arm-linux-gcc… no
checking for arm-linux-c++… no
checking for arm-linux-g++… no
checking for arm-linux-cxx… no
checking for arm-linux-gxx… no
checking for arm-linux-gcc… no
checking for arm-linux-gcj… no
checking for arm-linux-gfortran… no
checking for ar… no
checking for arm-linux-ar… no
checking for as… no
checking for arm-linux-as… no
checking for dlltool… no
checking for arm-linux-dlltool… no
checking for ld… no
checking for arm-linux-ld… no
checking for lipo… no
checking for arm-linux-lipo… no
checking for nm… no
checking for arm-linux-nm… no
checking for objdump… no
checking for arm-linux-objdump… no
checking for ranlib… no
checking for arm-linux-ranlib… no
checking for strip… no
checking for arm-linux-strip… no
checking for windres… no
checking for arm-linux-windres… no
checking where to find the target ar… pre-installed
checking where to find the target as… pre-installed
checking where to find the target cc… just compiled
checking where to find the target c++… just compiled
checking where to find the target c++ for libstdc++… just compiled
checking where to find the target dlltool… pre-installed
checking where to find the target gcc… just compiled
checking where to find the target gcj… pre-installed
checking where to find the target gfortran… pre-installed
checking where to find the target ld… pre-installed
checking where to find the target lipo… pre-installed
checking where to find the target nm… pre-installed
checking where to find the target objdump… pre-installed
checking where to find the target ranlib… pre-installed
checking where to find the target strip… pre-installed
checking where to find the target windres… pre-installed
checking whether to enable maintainer-specific portions of Makefiles… no
creating ./config.status
CONFIG_FILES=Makefile CONFIG_HEADERS= /bin/sh ./config.status
creating Makefile

Can you please tell where is the problem?

Akramul

Something is wrong with your filesystem or something else and is touching Makefile.in thus causing a constant reconfigure.

You should figure out what's touching Makefile.in and changing its timestamp.

-eric