Hi all, I failed to build llvm r82747 and MacRuby r2765 following the instruction of README. I use core duo macbook and Leopard.
$ svn co -r 2765 http://svn.macosforge.org/repository/ruby/MacRuby/trunk MacRuby-trunk $ svn co -r 82747 https://llvm.org/svn/llvm-project/llvm/trunk llvm-trunk $ cd llvm-trunk $ UNIVERSAL=1 UNIVERSAL_ARCH="i386 x86_64" ENABLE_OPTIMIZED=1 make ... llvm[2]: Compiling BasicBlockTracing.c for Release build (bytecode) ... llvm-gcc-4.2: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags To avoid the error, omited univsersal environment variables. $ ENABLE_OPTIMIZED=1 make It worked. Next, build MacRuby itself. My llvm isn't universal binary anymore, so I explicitly specified archs options; $ PATH=$PATH:~/Desktop/wc/MacRuby/llvm-trunk/Release/bin rake archs=i386 ... /usr/bin/g++ -I/Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include -I/Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -O3 -fno-common -Woverloaded-virtual -I. -I./include -g -Wall -arch i386 -Wno-parentheses -Wno-deprecated-declarations -Werror -Winline --param inline-unit-growth=10000 --param large-function-growth=10000 -x objective-c++ -c dispatcher.cpp -o dispatcher.o cc1objplus: warnings being treated as errors /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/Type.h:417: warning: ‘void llvm::PATypeHandle::addUser()’ was used before it was declared inline ... I got warnings which stopped build. So added "allow_build_warnings=true"; $ PATH=$PATH:~/Desktop/wc/MacRuby/llvm-trunk/Release/bin rake archs=i386 allow_build_warnings=true ... ./miniruby -I. -I./lib bin/rubyc --internal -C "rbconfig.rb" -o "./rbconfig.rbo" terminate called after throwing an instance of 'RoxorReturnFromBlockException*' rake aborted! I stucked. I don't have any idea to avoid the exception yet. Also, I tried some of ideas; * use gcc-4.2 instead of default version of gcc 4.0 on Leopard, but this doesn't seem to have any effect. * append --disable-dependency-tracking to ./configure of llvm Before continue to struggle, I want some help. If someone succeeded to build MacRuby after releasing 0.5 beta1, please help me. Or have any idea, I'll try it. Thanks in advance. ====== Lines below are more details of the build fialures: $ uname -a Darwin hiroshi-macbook.local 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386 $ gcc -v .. gcc version 4.0.1 (Apple Inc. build 5493) $ svn co -r 2765 http://svn.macosforge.org/repository/ruby/MacRuby/trunk MacRuby-trunk $ svn co -r 82747 https://llvm.org/svn/llvm-project/llvm/trunk llvm-trunk $ cd llvm-trunk $ ./configure $ UNIVERSAL=1 UNIVERSAL_ARCH="i386 x86_64" ENABLE_OPTIMIZED=1 make ... llvm[2]: Compiling BasicBlockTracing.c for Release build (bytecode) /Developer/usr/bin/llvm-gcc -I/Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include -I/Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/runtime/libprofile -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -O3 -fno-common -mmacosx-version-min=10.5 -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -arch i386 -arch x86_64 BasicBlockTracing.c -o /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/runtime/libprofile/Release/BasicBlockTracing.ll -S -emit-llvm llvm-gcc-4.2: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags make[2]: *** [/Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/runtime/libprofile/Release/BasicBlockTracing.ll] Error 1 make[1]: *** [libprofile/.makeall] Error 2 make: *** [all] Error 1 Instead of building llvm with multiple archs, I tried to build it without universal flags: $ ENABLE_OPTIMIZED=1 make It works, but next, building macruby itself failed. $ cd ..; cd MacRuby-trunk $ PATH=$PATH:~/Desktop/wc/MacRuby/llvm-trunk/Release/bin rake archs=i386 ... /usr/bin/g++ -I/Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include -I/Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -O3 -fno-common -Woverloaded-virtual -I. -I./include -g -Wall -arch i386 -Wno-parentheses -Wno-deprecated-declarations -Werror -Winline --param inline-unit-growth=10000 --param large-function-growth=10000 -x objective-c++ -c dispatcher.cpp -o dispatcher.o cc1objplus: warnings being treated as errors /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/Type.h:417: warning: ‘void llvm::PATypeHandle::addUser()’ was used before it was declared inline /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/AbstractTypeUser.h:95: warning: previous non-inline declaration here /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/Type.h:422: warning: ‘void llvm::PATypeHandle::removeUser()’ was used before it was declared inline /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/AbstractTypeUser.h:96: warning: previous non-inline declaration here /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/Type.h:434: warning: ‘llvm::Type* llvm::PATypeHolder::get() const’ was used before it was declared inline /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/AbstractTypeUser.h:159: warning: previous non-inline declaration here /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/Type.h:440: warning: ‘void llvm::PATypeHolder::addRef()’ was used before it was declared inline /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/AbstractTypeUser.h:182: warning: previous non-inline declaration here /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/Type.h:446: warning: ‘void llvm::PATypeHolder::dropRef()’ was used before it was declared inline /Users/hiroshi/Desktop/wc/MacRuby/llvm-trunk/include/llvm/AbstractTypeUser.h:183: warning: previous non-inline declaration here rake aborted! ========== Hiroshi Saito hiroshi3...@gmail.com http://blog.yakitara.com/ http://github.com/hiroshi _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel