ALbert Mietus
2010-Jan-23 23:55 UTC
[LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT
--Groetjes, Albert ALbert Mietus GSM: +316 16 531 258 Send prive mail to: ALbert at ons-huis dot net Don't send spam mail! Mijn missie: http://SoftwareBeterMaken.nl product, proces & imago. Mijn leven in het kort: http://albert.mietus.nl/Doc/CV_ALbert.html On 23 Jan 2010., at 22:07, Garrison Venn wrote:> Look at what is in <llvm source root>/examples/Kaleidoscope/toy.cpp. > This is the final version of the tutorial and worked the last time I > played with 2.6.Tried, that code ... And got a error (which I not really understand, yet) || > g++ -g -O0 toy-example26.cpp -o toy-example26 \ || `/Users/albert/NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/bin/ llvm-config --cppflags --ldflags --libs core jit native` || Undefined symbols: || "_LLVMLinkInInterpreter", referenced from: || (anonymous namespace)::ForceInterpreterLinking::ForceInterpreterLinking() in ccXf1BAH.o || ld: symbol(s) not found || collect2: ld returned 1 exit status Note, `/Users/albert/NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/ bin/llvm-config --cppflags --ldflags --libs core jit native` gives (formating by me) -I/Users/albert/NoTimeMachine/LLCM_Clang/BUILD-llvm-2.6+clang/../ llvm-2.6/include \ -I/Users/albert/NoTimeMachine/LLCM_Clang/BUILD-llvm-2.6+clang/include -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS \ \ -L/Users/albert/NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/lib - lpthread -lffi -lm \ -lLLVMX86Disassembler \ -lLLVMX86AsmParser \ -lLLVMMCParser \ -lLLVMX86AsmPrinter \ -lLLVMX86CodeGen \ -lLLVMSelectionDAG \ -lLLVMAsmPrinter \ -lLLVMX86Info \ -lLLVMJIT \ -lLLVMExecutionEngine \ -lLLVMCodeGen \ -lLLVMScalarOpts \ -lLLVMInstCombine \ -lLLVMTransformUtils \ -lLLVMipa \ -lLLVMAnalysis \ -lLLVMTarget \ -lLLVMMC \ -lLLVMCore \ -lLLVMSupport \ -lLLVMSystem \ #eol Trying to build with other version/Build (PreBuild one, Debug-version, or trunk) give same error and simular values for llvm-config output (same, but for the path) Any Idea? --THANKS> > Garrison > > On Jan 23, 2010, at 12:21, ALbert Mietus wrote: > >> I ask for advice, for TheExecutionEngine === NULL, >> >>>> Which result's in a null-pointer for "TheExecutionEngine"; which >>>> explains the bus-errror .. >> >> Reid Kleckner wrote: >>> Try changing the above line to: >>> std::string str; >>> TheExecutionEngine >>> EngineBuilder(OurModuleProvider).setErrorStr(str).create(); >>> cout << str << '\n'; >>> >>> This interface should set str to an appropriate error message if it >>> returns NULL. >> >> I tried this, assuming that line should be >> || TheExecutionEngine >> EngineBuilder(TheModule).setErrorStr(&str).create(); >> --------------------------------------------------------- >> ^^^^^^^^^^------------------^---------------- >> * There is on "OurModuleProvider, g++ says .., and >> * g++ complains about the str-type >> (Well, g++ actually complain about the function; but I assume this >> is what is means, ... >> At least adding the & help to compile it:-) >> >> The result: nada. No string is printed! (or an empty string, I should >> say) >> >> So more help is welcome.! Can somebody just try the code on his/her >> machine; maybe the tutorial is "to old" >> The code is, as you probably know, at: http://llvm.org/releases/2.6/docs/tutorial/LangImpl4.html#code >> When it is working on your system, please email me, including that >> version (or svn- tag/date) And I will try the same version >> >> Thanks >> >> --Groetjes, Albert >> >> ALbert Mietus >> GSM: +316 16 531 258 >> Send prive mail to: ALbert at ons-huis dot net >> Don't send spam mail! >> Mijn missie: http://SoftwareBeterMaken.nl product, proces & >> imago. >> Mijn leven in het kort: http://albert.mietus.nl/Doc/CV_ALbert.html >> >> >> >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Garrison Venn
2010-Jan-24 10:02 UTC
[LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT
Change your g++ build to: g++ -g -O0 toy-example26.cpp -o toy-example26 `/Users/albert/NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/bin/llvm-config --cppflags --ldflags --libs core jit interpreter native` After you get this working, try it with the source interpreter include removed, and minus the above interpreter llvm-config addition. Garrison On Jan 23, 2010, at 18:55, ALbert Mietus wrote:> > --Groetjes, Albert > > ALbert Mietus > GSM: +316 16 531 258 > Send prive mail to: ALbert at ons-huis dot net > Don't send spam mail! > Mijn missie: http://SoftwareBeterMaken.nl product, proces & imago. > Mijn leven in het kort: http://albert.mietus.nl/Doc/CV_ALbert.html > > > On 23 Jan 2010., at 22:07, Garrison Venn wrote: > >> Look at what is in <llvm source root>/examples/Kaleidoscope/toy.cpp. >> This is the final version of the tutorial and worked the last time I played with 2.6. > > Tried, that code ... And got a error (which I not really understand, yet) > || > g++ -g -O0 toy-example26.cpp -o toy-example26 \ > || `/Users/albert/NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/bin/llvm-config --cppflags --ldflags --libs core jit native` > || Undefined symbols: > || "_LLVMLinkInInterpreter", referenced from: > || (anonymous namespace)::ForceInterpreterLinking::ForceInterpreterLinking() in ccXf1BAH.o > || ld: symbol(s) not found > || collect2: ld returned 1 exit status > > Note, `/Users/albert/NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/bin/llvm-config --cppflags --ldflags --libs core jit native` gives > (formating by me) > -I/Users/albert/NoTimeMachine/LLCM_Clang/BUILD-llvm-2.6+clang/../llvm-2.6/include \ > -I/Users/albert/NoTimeMachine/LLCM_Clang/BUILD-llvm-2.6+clang/include > -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS \ > \ > -L/Users/albert/NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/lib -lpthread -lffi -lm \ > -lLLVMX86Disassembler \ > -lLLVMX86AsmParser \ > -lLLVMMCParser \ > -lLLVMX86AsmPrinter \ > -lLLVMX86CodeGen \ > -lLLVMSelectionDAG \ > -lLLVMAsmPrinter \ > -lLLVMX86Info \ > -lLLVMJIT \ > -lLLVMExecutionEngine \ > -lLLVMCodeGen \ > -lLLVMScalarOpts \ > -lLLVMInstCombine \ > -lLLVMTransformUtils \ > -lLLVMipa \ > -lLLVMAnalysis \ > -lLLVMTarget \ > -lLLVMMC \ > -lLLVMCore \ > -lLLVMSupport \ > -lLLVMSystem \ > #eol > > Trying to build with other version/Build (PreBuild one, Debug-version, or trunk) give same error and simular values for llvm-config output (same, but for the path) > > Any Idea? --THANKS > >> >> Garrison >> >> On Jan 23, 2010, at 12:21, ALbert Mietus wrote: >> >>> I ask for advice, for TheExecutionEngine === NULL, >>> >>>>> Which result's in a null-pointer for "TheExecutionEngine"; which >>>>> explains the bus-errror .. >>> >>> Reid Kleckner wrote: >>>> Try changing the above line to: >>>> std::string str; >>>> TheExecutionEngine >>>> EngineBuilder(OurModuleProvider).setErrorStr(str).create(); >>>> cout << str << '\n'; >>>> >>>> This interface should set str to an appropriate error message if it >>>> returns NULL. >>> >>> I tried this, assuming that line should be >>> || TheExecutionEngine >>> EngineBuilder(TheModule).setErrorStr(&str).create(); >>> --------------------------------------------------------- >>> ^^^^^^^^^^------------------^---------------- >>> * There is on "OurModuleProvider, g++ says .., and >>> * g++ complains about the str-type >>> (Well, g++ actually complain about the function; but I assume this >>> is what is means, ... >>> At least adding the & help to compile it:-) >>> >>> The result: nada. No string is printed! (or an empty string, I should >>> say) >>> >>> So more help is welcome.! Can somebody just try the code on his/her >>> machine; maybe the tutorial is "to old" >>> The code is, as you probably know, at: http://llvm.org/releases/2.6/docs/tutorial/LangImpl4.html#code >>> When it is working on your system, please email me, including that >>> version (or svn- tag/date) And I will try the same version >>> >>> Thanks >>> >>> --Groetjes, Albert >>> >>> ALbert Mietus >>> GSM: +316 16 531 258 >>> Send prive mail to: ALbert at ons-huis dot net >>> Don't send spam mail! >>> Mijn missie: http://SoftwareBeterMaken.nl product, proces & imago. >>> Mijn leven in het kort: http://albert.mietus.nl/Doc/CV_ALbert.html >>> >>> >>> >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >
ALbert Mietus
2010-Jan-25 09:11 UTC
[LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT
First, THANKS for all the help!> Change your g++ build to: > > g++ -g -O0 toy-example26.cpp -o toy-example26 `/Users/albert/ > NoTimeMachine/LLCM_Clang/llvm-trunk/BUILD/Debug/bin/llvm-config -- > cppflags --ldflags --libs core jit interpreter native`This help! But, see below ...> After you get this working, try it with the source interpreter > include removed, and minus the above interpreter llvm-config addition.Now, I removed the interpreter lib and the line: '#include "llvm/ ExecutionEngine/Interpreter.h"', which again results in a "working" executable. Great! This enables me to study llvm again. As I wrote above, both build work more-or-less. I found a "new" bug; which I have feed to Bugzilla, see bug 6136. As A summary: When entering end-of-line, both build start dumping/showing the module content AND fail at it, with a abort-trap! See bugzilla for details For now, I will "backport" this working build to in-between (chapter) version of the tutorial and study it a bit more. Whenever I found doc- bugs or other items, I will enter them in in bugzilla (as I did before). Whenever I got a "good" explanation why I didn't/doesn't work (yet) on my system I will bugzilla and/or email it, with patches if possible THANKS --Groetjes, Albert ALbert Mietus GSM: +316 16 531 258 Send prive mail to: ALbert at ons-huis dot net Don't send spam mail! Mijn missie: http://SoftwareBeterMaken.nl product, proces & imago. Mijn leven in het kort: http://albert.mietus.nl/Doc/CV_ALbert.html
Reasonably Related Threads
- [LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT
- [LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT
- [LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT
- [LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT
- [LLVMdev] Kaleidoscope-tutorial: Fails to create the JIT