Hi Anton, The problem is in getting the system configured. Below is the crash I get in configure. Your comment regarding gnuwin32 not being needed is interesting - I actually installed gnu bison/flex to get past an earlier crash in configure. Thats why I was suggesting that a precompiled OBJ_ROOT for MingW32 would be a good idea - configure appears to be inherently fragile, and requires more expertise than I have to get past it if it does fail. Configure looking like a fragile thing, and windows programmers (like myself) lacking unix expertise to work arround it if it fails - the configure script is 1MB in size - 36000+ lines - which is pretty daunting. I am getting the exact same crash for the configure script for libjit as well by the way, so I know it's my fault. But I'm not sure whats broken. Do I have a bad version of 'sed' or something? I am already using MinGW for my own work, so my basic configuration works well enough. I installed msys1.0 so I could build llvm, but have no other need for it. If I could get at a pre-built OBJ_ROOT, I still wouldn't need it I believe. NB: The configure script for libjit is 800K ============================================================This is what I get when I run configure or make. sh-3.1$ ./configure checking build system type... i686-pc-mingw32 checking host system type... i686-pc-mingw32 checking target system type... i686-pc-mingw32 checking type of operating system we're going to host on... MingW checking target architecture... x86 checking for gcc... gcc checking for C compiler default output file name... a.exe checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... .exe checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E . . . [240 lines of output in total, before failure] checking whether the g++ linker (c:/mingw/bin/../lib/gcc/mingw32/4.3.3/../../../../mingw32/bin/ld.ex e) supports shared libraries... yes checking for g++ option to produce PIC... -DDLL_EXPORT checking if g++ PIC flag -DDLL_EXPORT works... yes checking if g++ static flag -static works... yes checking if g++ supports -c -o file.o... yes checking whether the g++ linker (c:/mingw/bin/../lib/gcc/mingw32/4.3.3/../../../../mingw32/bin/ld.ex e) supports shared libraries... yes checking dynamic linker characteristics... Win32 ld.exe checking how to hardcode library paths into programs... immediate appending configuration tag "F77" to mklib sed: -e expression #2, char 49: Unterminated `s' command configure: error: unable to update list of available tagged configurations. sh-3.1$ make Makefile:33: Makefile.config: No such file or directory Makefile:98: /Makefile.rules: No such file or directory make: *** No rule to make target `/Makefile.rules'. Stop. sh-3.1$ mingw32-make makefile:33: Makefile.config: No such file or directory makefile:98: /Makefile.rules: No such file or directory mingw32-make: *** No rule to make target `/Makefile.rules'. Stop.> Message: 13 > Date: Sat, 11 Jul 2009 12:52:42 +0400 > From: Anton Korobeynikov <anton at korobeynikov.info> > Subject: Re: [LLVMdev] LLVM pre-built libraries download? (OBJ_ROOT > structure) > To: LLVM Developers Mailing List <llvmdev at cs.uiuc.edu> > Message-ID: > <b087fca00907110152xa8cb1d4t1dbc0e3be1674628 at mail.gmail.com> > Content-Type: text/plain; charset=UTF-8 > > Hello, Lance > >> And can I suggest that such a thing be made available on the LLVM >> downloads >> page? It would avoid a pretty steep learning curve, to get >> mingw/msys/gnuwin32 packages cooperating enough to get LLVM built. > I don't see the point. You still need to have mingw/msys fully set up > to work with these libraries/headers. gnuwin stuff is not needed > anymore - LLVM does not use flex / bison > > Also, I'm not aware about any problems of building LLVM on mingw > except some gtest weirdness which can be easily switched off. > > -- > With best regards, Anton Korobeynikov > Faculty of Mathematics and Mechanics, Saint Petersburg State University >---------------- ---------------- ---------------- ---------------- "Boredom is the art of finding something else to do" -- Groucho Marx Phone # ++66 821 898 573 (Thailand from 08/09/03)
Hello, Lance>Your comment regarding gnuwin32 not being needed is interesting - >I actually installed gnu bison/flex to get past an earlier crash in >configure.Which version of LLVM you're building?> (c:/mingw/bin/../lib/gcc/mingw32/4.3.3/../../../../mingw32/bin/ld.exmingw32 gcc 4.x should be considered as 'alpha'. 3.4.5 is known to be stable. This might give you the needed information about LLVM build on mingw32: http://blogs.tedneward.com/2008/02/24/Building+LLVM+On+Windows+Using+MinGW32.aspx Some stuff listed there is not needed anymore (flex / bison) and some versions are definitely not up to date, but otherwise it's pretty clear. -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
LOL, Hi Anton, LLVM-2.5 - should have been the first thing I said. Sorry bout that. I had actually read that www site, but hadn't recognised your name. Pretty much duplicates my own experience. Anyway, I haven't followed the instructions through carefully, as I am finding it difficult to locate the downloads listed - from march 2008. MinGW doesn't seem to have a single coherent point of download as far as I can tell. mingw gcc version as you ask is 4.3.3 - but I have the llvm-gcc compilers to avoid any issue there if/when I get that far. A couple of hours ago it was 3.4.5 - I ended up with 4.3.3 when I used an msys1.0 image I downloaded somewhere. I will follow that site - excluding the last three "tad tricky" ones - bison/flex/regex - which you say should not be needed. Actually those three look like the workarround I needed to get arround the first crash I saw in configure. When I get this building I can zip up the resultant OBJ_ROOT and pass it back if llvm.org has somewhere to host it - I add that I intend to use llvm-gcc to build which should suit. Interested? :) ----- Original Message ----- From: "Anton Korobeynikov" <anton at korobeynikov.info> To: "LLVM Developers Mailing List" <llvmdev at cs.uiuc.edu>; <lance.delahaye at gmail.com> Sent: Sunday, July 12, 2009 2:17 AM Subject: Re: [LLVMdev] LLVMdev Digest, Vol 61, Issue 25> Hello, Lance > >>Your comment regarding gnuwin32 not being needed is interesting - >>I actually installed gnu bison/flex to get past an earlier crash in >>configure. > Which version of LLVM you're building? > >> (c:/mingw/bin/../lib/gcc/mingw32/4.3.3/../../../../mingw32/bin/ld.ex > mingw32 gcc 4.x should be considered as 'alpha'. 3.4.5 is known to be > stable. > > This might give you the needed information about LLVM build on mingw32: > http://blogs.tedneward.com/2008/02/24/Building+LLVM+On+Windows+Using+MinGW32.aspx > > Some stuff listed there is not needed anymore (flex / bison) and some > versions are definitely not up to date, but otherwise it's pretty > clear. > > -- > With best regards, Anton Korobeynikov > Faculty of Mathematics and Mechanics, Saint Petersburg State University >
Anton Korobeynikov
2009-Jul-12 09:17 UTC
[LLVMdev] LLVM pre-built libraries download? (OBJ_ROOT structure)
Hello, Lance> 10:46:08.20 C: mingw32-make > gcc -IC:/MinGW/include -g -c que.cc > que.cc:1:19: stdio.h: No such file or directory > que.cc:2:20: stdlib.h: No such file or directory > que.cc:3:20: string.h: No such file or directoryHave you really unpacked mingw-runtime and w32api tarballs? It seems you didn't. -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
Anton Korobeynikov
2009-Jul-12 13:18 UTC
[LLVMdev] LLVM pre-built libraries download? (OBJ_ROOT structure)
Hello, Lance> With regards to my original problem, still requires flex/bison to configure, > and I have installed. The problem that brought me to the list turns out to > be that I have a copy of borland/inprises grep tool on the path (which I use > a lot).Heh, name clashing is well-known problem. Another source of such problems is 'sort' util.> Probably not an issue, but I see in the coding standards chris likes > warnings to be treated like errors. Is there something else I am missing? > Perhaps an env setting to disable those warnings?The mentioned stl_uninitialized warnings are harmless and comes from compiler bug. Unfortunately, there is no way to "turn them off". -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University