I also tried in a 64bits machine, instead, I can install llvm from cd
~/Sources/trunk/FreeMat/dependencies/llvm-2.7/cmake
after that, I install freemat from source. It is almost done, but
there is still an error
[100%] Building CXX object src/CMakeFiles/FreeMat.dir/
qrc_FreeMat.cxx.o
Linking CXX executable FreeMat
../libs/libMatC/libMatC.a(JIT.cpp.o): In function `(anonymous
namespace)::ForcePassLinking::ForcePassLinking()':
JIT.cpp:(.text+0x89): undefined reference to
`llvm::createScalarEvolutionAliasAnalysisPass()'
JIT.cpp:(.text+0xc0): undefined reference to
`llvm::createDomOnlyPrinterPass()'
JIT.cpp:(.text+0xc5): undefined reference to
`llvm::createDomPrinterPass()'
JIT.cpp:(.text+0xca): undefined reference to
`llvm::createDomOnlyViewerPass()'
JIT.cpp:(.text+0xcf): undefined reference to
`llvm::createDomViewerPass()'
JIT.cpp:(.text+0xd9): undefined reference to
`llvm::createOptimalEdgeProfilerPass()'
JIT.cpp:(.text+0x11f): undefined reference to
`llvm::createLazyValueInfoPass()'
JIT.cpp:(.text+0x17e): undefined reference to
`llvm::createProfileVerifierPass()'
JIT.cpp:(.text+0x197): undefined reference to
`llvm::createPostDomOnlyPrinterPass()'
JIT.cpp:(.text+0x19c): undefined reference to
`llvm::createPostDomPrinterPass()'
JIT.cpp:(.text+0x1a1): undefined reference to
`llvm::createPostDomOnlyViewerPass()'
JIT.cpp:(.text+0x1a6): undefined reference to
`llvm::createPostDomViewerPass()'
JIT.cpp:(.text+0x20a): undefined reference to
`llvm::createGVNPass(bool)'
JIT.cpp:(.text+0x2c4): undefined reference to
`llvm::createGEPSplitterPass()'
JIT.cpp:(.text+0x2c9): undefined reference to
`llvm::createSCCVNPass()'
JIT.cpp:(.text+0x2ce): undefined reference to `llvm::createABCDPass()'
../libs/libMatC/libMatC.a(JIT.cpp.o): In function `JIT::JIT()':
JIT.cpp:(.text+0x47f): undefined reference to
`llvm::Module::Module(llvm::StringRef, llvm::LLVMContext&)'
JIT.cpp:(.text+0x4c8): undefined reference to
`llvm::ExecutionEngine::createJIT(llvm::Module*,
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>*, llvm::JITMemoryManager*, llvm::CodeGenOpt::Level, bool,
llvm::CodeModel::Model)'
JIT.cpp:(.text+0x581): undefined reference to
`llvm::FunctionPassManager::FunctionPassManager(llvm::Module*)'
JIT.cpp:(.text+0x98c): undefined reference to
`llvm::createGVNPass(bool)'
../libs/libMatC/libMatC.a(JIT.cpp.o): In function `JIT::JIT()':
JIT.cpp:(.text+0xb1f): undefined reference to
`llvm::Module::Module(llvm::StringRef, llvm::LLVMContext&)'
JIT.cpp:(.text+0xb68): undefined reference to
`llvm::ExecutionEngine::createJIT(llvm::Module*,
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>*, llvm::JITMemoryManager*, llvm::CodeGenOpt::Level, bool,
llvm::CodeModel::Model)'
JIT.cpp:(.text+0xc21): undefined reference to
`llvm::FunctionPassManager::FunctionPassManager(llvm::Module*)'
JIT.cpp:(.text+0x102c): undefined reference to
`llvm::createGVNPass(bool)'
../libs/libMatC/libMatC.a(JIT.cpp.o): In function
`JIT::Alloc(llvm::Type const*, QString)':
JIT.cpp:(.text+0x2708): undefined reference to
`llvm::AllocaInst::AllocaInst(llvm::Type const*, llvm::Twine const&,
llvm::BasicBlock*)'
../libs/libMatC/libMatC.a(JIT.cpp.o): In function
`JIT::String(QString)':
JIT.cpp:(.text+0x280f): undefined reference to
`llvm::GlobalVariable::GlobalVariable(llvm::Type const*, bool,
llvm::GlobalValue::LinkageTypes, llvm::Constant*, llvm::Twine const&,
bool, unsigned int)'
JIT.cpp:(.text+0x2877): undefined reference to
`llvm::ConstantArray::get(llvm::LLVMContext&, llvm::StringRef, bool)'
../libs/libMatC/libMatC.a(JIT.cpp.o): In function
`JIT::DefineFunction(llvm::FunctionType const*, QString)':
JIT.cpp:(.text+0x30da): undefined reference to
`llvm::Module::getOrInsertFunction(llvm::StringRef, llvm::FunctionType
const*)'
../libs/libMatC/libMatC.a(JIT.cpp.o): In function
`llvm::FCmpInst::FCmpInst(llvm::BasicBlock&, llvm::CmpInst::Predicate,
llvm::Value*, llvm::Value*, llvm::Twine const&)':
JIT.cpp:
(.text._ZN4llvm8FCmpInstC1ERNS_10BasicBlockENS_7CmpInst9PredicateEPNS_5ValueES6_RKNS_5TwineE[llvm::FCmpInst::FCmpInst(llvm::BasicBlock&,
llvm::CmpInst::Predicate, llvm::Value*, llvm::Value*, llvm::Twine
const&)]+0x114): undefined reference to
`llvm::Type::isFPOrFPVectorTy() const'
../libs/libMatC/libMatC.a(JIT.cpp.o): In function
`llvm::SmallVectorTemplateBase<unsigned char, true>::grow(unsigned
long)':
JIT.cpp:
(.text._ZN4llvm23SmallVectorTemplateBaseIhLb1EE4growEm[llvm::SmallVectorTemplateBase<unsigned
char, true>::grow(unsigned long)]+0x24): undefined reference to
`llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long)'
collect2: ld returned 1 exit status
make[2]: *** [src/FreeMat] Error 1
make[1]: *** [src/CMakeFiles/FreeMat.dir/all] Error 2
make: *** [all] Error 2
I don't know what happened..
Liz