On Sun, Jan 20, 2008 at 09:39:49PM +0100, Ying Zhang wrote:
Hi Stefan,
Thanks for you help. I was sure that the system can produce 64 bits binary (see below).
And now, you also know how to check it in case your in doubt ;-)
The error:
"configure: WARNING: you should use --build, --host, --target checking build system type... Invalid configuration `64': machine `64' not recognized"
was caused by an error in my compile script, so it is solved.
I see -- so your did not just call `configure` or `configure --enable-bits=64` --- I did not know that ...
However, the changes Fabian has added seems not complete, because compiling MonetDB results in:
configure: error: case "yes-gcc-darwin9.1.0-i686-apple-darwin9.1.0-64" not handled with --enable-bits, yet; please use CC, CFLAGS and/or LDFLAGS (instead of --enable-bits=64) to make "gcc" produce 64-bit code
Isn't it great, this very verbosely self-explaining error message? ;-)
I think this is because:
$ gcc -v Using built-in specs. Target: i686-apple-darwin9 Configured with: /var/tmp/gcc/gcc-5465~16/src/configure --disable- checking -enable-werror --prefix=/usr --mandir=/share/man --enable- languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/ $/-4.0/ --with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/ lib --build=i686-apple-darwin9 --with-arch=apple --with-tune=generic -- host=i686-apple-darwin9 --target=i686-apple-darwin9 Thread model: posix gcc version 4.0.1 (Apple Inc. build 5465)
Following your suggestion, I changed "yes-*-darwin[89]*-i386*-*" into "yes-*-darwin[89]*-i[[36]]86*-*", which allows me to compile monet :) I think I can check in the following change:
Go ahead --- in fact, you might want to replace "[[36]]" by "[[3-6]]" to make it even more generic. Stefan
$ cvs diff conf/MonetDB.m4 Index: conf/MonetDB.m4 =================================================================== RCS file: /cvsroot/monetdb/buildtools/conf/MonetDB.m4,v retrieving revision 1.37.2.19 diff -r1.37.2.19 MonetDB.m4 523c523 < yes-*-darwin[89]*-powerpc*-* | yes-*-darwin[89]*-i386*-* | yes-*- darwin[89]*-x86_64*-*) ---
yes-*-darwin[[89]]*-powerpc*-*|yes-*-darwin[[89]]*-i[[36]]86*-*|yes- *-darwin[[89]]*-x86_64*-*)
you might also want to check, if your system & compiler are actually capable of producing 64-bit binaries, and if so, whether the default of your compiler is 32- or 64-bit. E.g.:
echo -e '#include
\n#include \nint main() {\nprintf("Hello\\n");\nreturn 0;\n}' | tee hello.c ; gcc -o hello hello.c && ./hello ; gcc -m32 -o hello32 hello.c && ./hello32 ; gcc - m64 -o hello64 hello.c && ./hello64 ; file hello{,32,64} $ echo -e '#include
\n#include \nint main() {\nprintf("Hello\\n");\nreturn 0;\n}' | tee hello.c ; gcc -o hello hello.c && ./hello ; gcc -m32 -o hello32 hello.c && ./hello32 ; gcc - m64 -o hello64 hello.c && ./hello64 ; file hello{,32,64} #include #include int main() { printf("Hello\n"); return 0; } Hello Hello Hello hello: Mach-O executable i386 hello32: Mach-O executable i386 hello64: Mach-O 64-bit executable x86_64 Could you please also report what uname -a says on your system?
$ uname -a Darwin leopard.mshome.net 9.1.0 Darwin Kernel Version 9.1.0: Wed Oct 31 17:46:22 PDT 2007; root:xnu-1228.0.2~1/RELEASE_I386 i386
Jennie
------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Monetdb-developers mailing list Monetdb-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/monetdb-developers
-- | Dr. Stefan Manegold | mailto:Stefan.Manegold@cwi.nl | | CWI, P.O.Box 94079 | http://www.cwi.nl/~manegold/ | | 1090 GB Amsterdam | Tel.: +31 (20) 592-4212 | | The Netherlands | Fax : +31 (20) 592-4312 |