[LLVMdev] Building llvm under cygwin

Reid Spencer reid at x10sys.com
Tue Aug 1 09:15:34 PDT 2006


On Tue, 2006-08-01 at 15:48 +0400, Anton Vayvod wrote:
>         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.

The key is the above line.  IIRC this is fixed in a recent patch. Have
you updated your LLVM tree recently?

Reid.

> ../../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.
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20060801/db46d063/attachment.sig>


More information about the llvm-dev mailing list