Hi
I’m having a few problems building the kaleidoscope example (chapter 3)
under MinGW. To build the example I use as recommended
g++ -g -O3 toy.cpp `llvm-config --cppflags --ldflags --libs core` -o toy
but get the following error
sh: llvm-config: command not found
Indeed in my “\llvm-2.7\tools\llvm-config\” build directory there is no
“Release” subdirectory as I would expect (only llvm-config.in among other
files) and in \llvm-2.7\Release\bin no llvm-config executable (only
a llvm-config text file). This was a little unexpected because otherwise
llvm appears to have been built fine and llvm object directory tree also
looks OK.
What I am doing wrong? Any help would be much appreciated!
***** Error Messages
sh: llvm-config: command not found
In file included from
/mingw/lib/gcc/mingw32/../../../include/llvm/Type.h:15,
from
/mingw/lib/gcc/mingw32/../../../include/llvm/DerivedTypes.h:21,
from main.cpp:10:
/mingw/lib/gcc/mingw32/../../../include/llvm/System/DataTypes.h:45:3: error:
#error "Must #define __STDC_LIMIT_MACROS before #including
System/DataTypes.h"
/mingw/lib/gcc/mingw32/../../../include/llvm/System/DataTypes.h:49:3: error:
#error "Must #define __STDC_CONSTANT_MACROS before " "#including
System/DataTypes.h"
In file included from
/mingw/lib/gcc/mingw32/../../../include/llvm/Attributes.h:18,
from
/mingw/lib/gcc/mingw32/../../../include/llvm/Argument.h:18,
from
/mingw/lib/gcc/mingw32/../../../include/llvm/Function.h:24,
from
/mingw/lib/gcc/mingw32/../../../include/llvm/Module.h:18,
from main.cpp:12:
/mingw/lib/gcc/mingw32/../../../include/llvm/Support/MathExtras.h: In
function 'bool llvm::isInt(int64_t)':
/mingw/lib/gcc/mingw32/../../../include/llvm/Support/MathExtras.h:57: error:
there are no arguments to 'INT64_C' that depend on a template parameter,
so
a declaration of 'INT64_C' must be available
/mingw/lib/gcc/mingw32/../../../include/llvm/Support/MathExtras.h:57: note:
(if you use '-fpermissive', G++ will accept your code, but allowing the
use
of an undeclared name is deprecated)
/mingw/lib/gcc/mingw32/../../../include/llvm/Support/MathExtras.h:57: error:
there are no arguments to 'INT64_C' that depend on a template parameter,
so
a declaration of 'INT64_C' must be available
/mingw/lib/gcc/mingw32/../../../include/llvm/Support/MathExtras.h: In
function 'bool llvm::isUint(uint64_t)':
/mingw/lib/gcc/mingw32/../../../include/llvm/Support/MathExtras.h:62: error:
there are no arguments to 'UINT64_C' that depend on a template
parameter, so
a declaration of 'UINT64_C' must be available
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20100907/e61e5a14/attachment.html>
Hello, António. 2010/9/7 António Saragga Seabra <antseabra at gmail.com>:> I’m having a few problems building the kaleidoscope example (chapter 3) > under MinGW. To build the example I use as recommended> g++ -g -O3 toy.cpp `llvm-config --cppflags --ldflags --libs core` -o toy > sh: llvm-config: command not foundYou need MSYS's perl to use llvm-config on mingw. Does this below work? -D_DEBUG (might be -DNDEBUG) -D__NO_CTYPE_INLINE -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -lLLVMCore -lLLVMSupport -lLLVMSystem -lpsapi -limagehlp -lm ...Takumi
Hello, Takumi, you are absolutely right! It was a problem with Perl. Many thanks! That problem solved, tried to compile again the kaleidoscope example but unfortunatelly now I get the link errors found bellow: $g++ -g –O3 toy.cpp `llvm-config –cppflags –ldflags –libs core`-o toy c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x4d4): undefined reference to `_imp__SymSetOptions at 4' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x463): undefined reference to `_imp__SymInitialize at 12' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x46c): undefined reference to `_imp__SymGetModuleBase at 8' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x47a): undefined reference to `_imp__SymFunctionTableAccess at 8' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x4b2): undefined reference to `_imp__StackWalk at 36' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x567): undefined reference to `_imp__SymGetModuleBase at 8' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x611): undefined reference to `_imp__SymGetSymFromAddr at 16' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Signals.o):Signals.cpp:(.text+0x6ae): undefined reference to `_imp__SymGetLineFromAddr at 16' c:/llvm-2.7/Release/lib/libLLVMSystem.a(Process.o):Process.cpp:(.text+0x8d): undefined reference to `GetProcessMemoryInfo at 12' collect2: ld returned 1 exit status I built again LLVM now with perl working properly. Any help would be great Antonio 2010/9/7 NAKAMURA Takumi <geek4civic at gmail.com>> Hello, António. > > 2010/9/7 António Saragga Seabra <antseabra at gmail.com>: > > > I’m having a few problems building the kaleidoscope example (chapter 3) > > under MinGW. To build the example I use as recommended > > > g++ -g -O3 toy.cpp `llvm-config --cppflags --ldflags --libs core` -o toy > > sh: llvm-config: command not found > > You need MSYS's perl to use llvm-config on mingw. > > Does this below work? > -D_DEBUG (might be -DNDEBUG) > -D__NO_CTYPE_INLINE > -D_GNU_SOURCE > -D__STDC_LIMIT_MACROS > -D__STDC_CONSTANT_MACROS > -lLLVMCore -lLLVMSupport -lLLVMSystem > -lpsapi -limagehlp -lm > > ...Takumi >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100907/58ea3332/attachment.html>
Apparently Analagous Threads
- [LLVMdev] llvm-config error
- [LLVMdev] llvm-config error
- [LLVMdev] llvm-config error
- [LLVMdev] LLVM ERROR: Program used external function 'printd' which could not be resolved!
- [LLVMdev] LLVM ERROR: Program used external function 'printd' which could not be resolved!