我想为一个相对简单的脚本创建一个二进制可执行文件,不需要人们安装macruby或HotCocoa。 The script is here。我知道我想对编译器使用--static
选项,我正在使用以下命令:
macrubyc -o postprocessor --static postprocessor.rb
我收到以下错误:
ld: library not found for -lLLVMBitWriter
collect2: ld returned 1 exit status
Error when executing `/usr/bin/g++ -o "postprocessor" -arch x86_64 -L/Library/Frameworks/MacRuby.framework/Versions/0.6/usr/lib -lmacruby-static -L/usr/local/lib -lpthread -lffi -lm -lLLVMBitWriter -lLLVMX86CodeGen -lLLVMX86Info -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMJIT -lLLVMExecutionEngine -lLLVMCodeGen -lLLVMScalarOpts -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMMC -lLLVMCore -lLLVMSupport -lLLVMSystem -lpthread -ldl -lxml2 -lobjc -lauto -licucore -framework Foundation "/var/folders/wU/wUGgoG1JGeKBgwalWLPMAU+++TI/-Tmp-/main-72203.o" "./postprocessor.o"'
我该怎么办才能让它运转起来?
答案 0 :(得分:1)
看起来您遗漏了LLVM中的内容,macruby's README建议(在要求下)安装某个LLVM版本。所以请检查你是否安装了它。
答案 1 :(得分:0)
我确实找到了解决方案。确保您运行的是MacRuby指定的LLVM版本,并且您正在使用MacRuby主分支中的代码。编译所有内容需要一段时间,但这是值得的。
简而言之,如果您按照macruby on GitHub的说明操作,那么您将会很高兴。