[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