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