[LLVMdev] Building llvm under cygwin

Anton Vayvod avayvod at gmail.com
Tue Aug 1 04:48:24 PDT 2006


>
> If you're building llvm-gcc4, you don't need the runtime libraries, so
> I'd just stick with the "tools-only" build and declare success.  If
> you're building llvm-gcc3, I'd suggest you switch to llvm-gcc4 :)


I switched to llvm-gcc4 but when I run make from obj folder i run into
folowing errors:

Can't find a library with no dependencies at /llvm/obj/Debug/bin/llvm-config
lin
e 420, <DATA> line 30.
../../src/gcc/gcc.c: In function `process_command':
../../src/gcc/gcc.c:3499: warning: assignment discards qualifiers from
pointer t
arget type
../../src/gcc/gcc.c:3504: warning: assignment from incompatible pointer type
../../src/gcc/gcc.c: In function `main':
../../src/gcc/gcc.c:6357: warning: 'value' might be used uninitialized in
this f
unction
/bin/sh: -c: line 0: syntax error near unexpected token `;'
/bin/sh: -c: line 0: `if  ; then \'
make[1]: *** [xlimits.h] Error 2
make: *** [all-gcc] Error 2

and there is the output of standart stream:

make[1]: Entering directory `/llvm-gcc/obj/libiberty'
make[2]: Entering directory `/llvm-gcc/obj/libiberty/testsuite'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/llvm-gcc/obj/libiberty/testsuite'
make[1]: Leaving directory `/llvm-gcc/obj/libiberty'
make[1]: Entering directory `/llvm-gcc/obj/fixincludes'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/llvm-gcc/obj/fixincludes'
make[1]: Entering directory `/llvm-gcc/obj/intl'
rm -f stamp-h1
/bin/sh ./config.status config.h
config.status: creating config.h
config.status: config.h is unchanged
test -f config.h || (rm -f stamp-h1 && make stamp-h1)
make[1]: Leaving directory `/llvm-gcc/obj/intl'
make[1]: Entering directory `/llvm-gcc/obj/build-i686-pc-cygwin/libiberty'
make[2]: Entering directory
`/llvm-gcc/obj/build-i686-pc-cygwin/libiberty/testsuite'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory
`/llvm-gcc/obj/build-i686-pc-cygwin/libiberty/testsuite'
make[1]: Leaving directory `/llvm-gcc/obj/build-i686-pc-cygwin/libiberty'
make[1]: Entering directory `/llvm-gcc/obj/build-i686-pc-cygwin/fixincludes'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/llvm-gcc/obj/build-i686-pc-cygwin/fixincludes'
make[1]: Entering directory `/llvm-gcc/obj/libcpp'
test -f config.h || (rm -f stamp-h1 && make stamp-h1)
test -d po || mkdir po
: --statistics -o po/be.gmo ../../src/libcpp/po/be.po
test -d po || mkdir po
: --statistics -o po/ca.gmo ../../src/libcpp/po/ca.po
test -d po || mkdir po
: --statistics -o po/da.gmo ../../src/libcpp/po/da.po
test -d po || mkdir po
: --statistics -o po/de.gmo ../../src/libcpp/po/de.po
test -d po || mkdir po
: --statistics -o po/el.gmo ../../src/libcpp/po/el.po
test -d po || mkdir po
: --statistics -o po/es.gmo ../../src/libcpp/po/es.po
test -d po || mkdir po
: --statistics -o po/fr.gmo ../../src/libcpp/po/fr.po
test -d po || mkdir po
: --statistics -o po/ja.gmo ../../src/libcpp/po/ja.po
test -d po || mkdir po
: --statistics -o po/nl.gmo ../../src/libcpp/po/nl.po
test -d po || mkdir po
: --statistics -o po/rw.gmo ../../src/libcpp/po/rw.po
test -d po || mkdir po
: --statistics -o po/sv.gmo ../../src/libcpp/po/sv.po
test -d po || mkdir po
: --statistics -o po/tr.gmo ../../src/libcpp/po/tr.po
test -d po || mkdir po
: --statistics -o po/vi.gmo ../../src/libcpp/po/vi.po
make[1]: Leaving directory `/llvm-gcc/obj/libcpp'
make[1]: Entering directory `/llvm-gcc/obj/gcc'
test -d po || mkdir po
: --statistics -o po/be.gmo ../../src/gcc/po/be.po
test -d po || mkdir po
: --statistics -o po/ca.gmo ../../src/gcc/po/ca.po
test -d po || mkdir po
: --statistics -o po/da.gmo ../../src/gcc/po/da.po
test -d po || mkdir po
: --statistics -o po/de.gmo ../../src/gcc/po/de.po
test -d po || mkdir po
: --statistics -o po/el.gmo ../../src/gcc/po/el.po
test -d po || mkdir po
: --statistics -o po/es.gmo ../../src/gcc/po/es.po
test -d po || mkdir po
: --statistics -o po/fr.gmo ../../src/gcc/po/fr.po
test -d po || mkdir po
: --statistics -o po/ja.gmo ../../src/gcc/po/ja.po
test -d po || mkdir po
: --statistics -o po/nl.gmo ../../src/gcc/po/nl.po
test -d po || mkdir po
: --statistics -o po/rw.gmo ../../src/gcc/po/rw.po
test -d po || mkdir po
: --statistics -o po/sv.gmo ../../src/gcc/po/sv.po
test -d po || mkdir po
: --statistics -o po/tr.gmo ../../src/gcc/po/tr.po
test -d po || mkdir po
: --statistics -o po/zh_CN.gmo ../../src/gcc/po/zh_CN.po
gcc   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-DENABLE_LLVM -D__STDC_LIMIT_MACROS   -I. -I. -I../../src/gcc
-I../../src/gcc/. -I../../src/gcc/../include -I./../intl
-I../../src/gcc/../libcpp/include  -I/llvm/include -I/llvm/obj/include  \
 -DTARGET_MACHINE=\"i686-pc-cygwin\" \
 -c ../../src/gcc/collect2.c -o collect2.o
gcc -c   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-DENABLE_LLVM -D__STDC_LIMIT_MACROS   -I. -I. -I../../src/gcc
-I../../src/gcc/. -I../../src/gcc/../include -I./../intl
-I../../src/gcc/../libcpp/include  -I/llvm/include -I/llvm/obj/include
../../src/gcc/tlink.c -o tlink.o
# APPLE LOCAL LLVM
c++   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-o Tcollect2.exe \
  collect2.o tlink.o intl.o version.o ../libcpp/libcpp.a ./../intl/libintl.a
-liconv  ../libiberty/libiberty.a
mv -f Tcollect2.exe collect2.exe
if test yes = yes \
    || test -n ""; then \
   /bin/sh ../../src/gcc/genmultilib \
     "" \
     "" \
     "" \
     "" \
     "" \
     "" \
     "" \
     "yes" \
     > tmp-mlib.h; \
 else \
   /bin/sh ../../src/gcc/genmultilib '' '' '' '' '' '' '' no \
     > tmp-mlib.h; \
 fi
/bin/sh ../../src/gcc/../move-if-change tmp-mlib.h multilib.h
echo timestamp > s-mlib
lsf="../../src/gcc/cp/lang-specs.h"; for f in $lsf; do \
     echo "#include \"$f\""; \
 done | sed 's|../../src/gcc/||' > tmp-specs.h
/bin/sh ../../src/gcc/../move-if-change tmp-specs.h specs.h
echo timestamp > s-specs
(SHLIB_LINK='' \
 SHLIB_MULTILIB=''; \
 gcc   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common -Wno-error
-DHAVE_CONFIG_H -DENABLE_LLVM -D__STDC_LIMIT_MACROS   -I. -I.
-I../../src/gcc -I../../src/gcc/. -I../../src/gcc/../include -I./../intl
-I../../src/gcc/../libcpp/include  -I/llvm/include -I/llvm/obj/include \
  -DSTANDARD_STARTFILE_PREFIX=\"../../../\"
-DSTANDARD_EXEC_PREFIX=\"/llvm-gcc/../install//lib/gcc/\"
-DSTANDARD_LIBEXEC_PREFIX=\"/llvm-gcc/../install//libexec/gcc/\"
-DDEFAULT_TARGET_VERSION=\"4.0.1\"
-DDEFAULT_TARGET_MACHINE=\"i686-pc-cygwin\"
-DSTANDARD_BINDIR_PREFIX=\"/llvm-gcc/../install//bin/\"
-DTOOLDIR_BASE_PREFIX=\"../../../../\"  `test "X${SHLIB_LINK}" = "X" || test
"yes" != "yes" || echo "-DENABLE_SHARED_LIBGCC"` `test "X${SHLIB_MULTILIB}"
= "X" || echo "-DNO_SHARED_LIBGCC_MULTILIB"` \
  -c ../../src/gcc/gcc.c -o gcc.o)
(SHLIB_LINK='' \
 SHLIB_MULTILIB=''; \
 gcc   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-DENABLE_LLVM -D__STDC_LIMIT_MACROS   -I. -I. -I../../src/gcc
-I../../src/gcc/. -I../../src/gcc/../include -I./../intl
-I../../src/gcc/../libcpp/include  -I/llvm/include -I/llvm/obj/include \
  -DSTANDARD_STARTFILE_PREFIX=\"../../../\"
-DSTANDARD_EXEC_PREFIX=\"/llvm-gcc/../install//lib/gcc/\"
-DSTANDARD_LIBEXEC_PREFIX=\"/llvm-gcc/../install//libexec/gcc/\"
-DDEFAULT_TARGET_VERSION=\"4.0.1\"
-DDEFAULT_TARGET_MACHINE=\"i686-pc-cygwin\"
-DSTANDARD_BINDIR_PREFIX=\"/llvm-gcc/../install//bin/\"
-DTOOLDIR_BASE_PREFIX=\"../../../../\"  `test "X${SHLIB_LINK}" = "X" || test
"yes" != "yes" || echo "-DENABLE_SHARED_LIBGCC"` `test "X${SHLIB_MULTILIB}"
= "X" || echo "-DNO_SHARED_LIBGCC_MULTILIB"` \
  -c ../../src/gcc/gccspec.c -o gccspec.o)
gcc -c   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-DENABLE_LLVM -D__STDC_LIMIT_MACROS   -I. -I. -I../../src/gcc
-I../../src/gcc/. -I../../src/gcc/../include -I./../intl
-I../../src/gcc/../libcpp/include  -I/llvm/include -I/llvm/obj/include \
 ../../src/gcc/config/i386/cygwin1.c
# APPLE LOCAL LLVM
c++   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-o xgcc.exe gcc.o gccspec.o intl.o \
   prefix.o version.o cygwin1.o ../libcpp/libcpp.a ./../intl/libintl.a
-liconv  ../libiberty/libiberty.a
gcc -c   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-DENABLE_LLVM -D__STDC_LIMIT_MACROS   -I. -I. -I../../src/gcc
-I../../src/gcc/. -I../../src/gcc/../include -I./../intl
-I../../src/gcc/../libcpp/include  -I/llvm/include -I/llvm/obj/include
../../src/gcc/cppspec.c -o cppspec.o
# APPLE LOCAL LLVM
c++   -g -O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fno-common   -DHAVE_CONFIG_H
-o cpp.exe gcc.o cppspec.o intl.o \
   prefix.o version.o cygwin1.o ../libcpp/libcpp.a ./../intl/libintl.a
-liconv  ../libiberty/libiberty.a
/llvm-gcc/obj/gcc/xgcc -B/llvm-gcc/obj/gcc/
-B/llvm-gcc/../install//i686-pc-cygwin/bin/
-B/llvm-gcc/../install//i686-pc-cygwin/lib/ -isystem
/llvm-gcc/../install//i686-pc-cygwin/include -isystem
/llvm-gcc/../install//i686-pc-cygwin/sys-include -dumpspecs > tmp-specs
mv tmp-specs specs
if  ; then \
   cat ../../src/gcc/limitx.h ../../src/gcc/glimits.h ../../src/gcc/limity.h
> tmp-xlimits.h; \
 else \
   cat ../../src/gcc/glimits.h > tmp-xlimits.h; \
 fi
make[1]: Leaving directory `/llvm-gcc/obj/gcc'

I though it was ld error, first, and reinstalled it to clean 2.17 instead of
cygwn experimental version. but that didn't help.



> However, the problem appears to be your PATH variable. In your path you
> have the following directory: C:/Program Files/Microsoft DirectX SDK
> (June 2006)/Utilities/Bin/x86. The bash shell doesn't like this because
> ( and ) are operators that invoke a sub-shell. You can do one of two
> things: either remove this directory from your path (its probably not
> needed), or enclose it in single quotes.
>
> Reid.


Yeah, thas moved me a little far until another error appeared and I
switched to llvm-gcc4.

Thanks for any help.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20060801/66070e62/attachment.html>


More information about the llvm-dev mailing list