[cfe-users] How do I USE this?
Madison Link via cfe-users
cfe-users at lists.llvm.org
Wed Sep 6 14:43:22 PDT 2017
Hello,
I’m trying to get a new compiler working because GCC is simply not
working on my system. I’ve heard great things about LLVM / CLang, and
would like to try it out, but I’m having trouble getting it to work at
all.
I installed LLVM-4.0.1-win64.exe on Windows 7 64-bit, and I’m trying to
get it working with the Code::Blocks IDE.
Code::Blocks wants the following information in its toolchain entered
into executables dialog.
What it wants My best guess
C Compiler clang.exe
C++ Compiler clang++.exe
Linker for dynamic libs: llvm-lib.exe
Linker for static libs: llvm-ar.exe
Debugger: GDB/CDB debugger
(dropdown list,
this is the only option.)
Resource compiler: windres.exe (not in clang
set.)
Make program mingw32-make.exe (not in clang
set.)
Are these correct? Does LLVM / Clang come with a Windows resource
compiler and make program?
When I try to compile a main() that simply increments a number and
returns,
using namespace std;
int main()
{
int j = 0;
for (int i = 0; i < 1000; i++) j++;
return j - 1000;
}
I get the following messages:
clang++.exe -Weverything -fexceptions -O2 -c "E:\Files and
Documents\Development\CompilerBasicTest\main.cpp" -o obj\Release\main.o
E:\Files and Documents\Development\CompilerBasicTest\main.cpp:3:17:
warning: using directive refers to implicitly-defined namespace 'std'
using namespace std;
^
1 warning generated.
llvm-lib.exe -o bin\Release\CompilerBasicTest.exe obj\Release\main.o -s
ignoring unknown argument: -o
ignoring unknown argument: -s
bin\Release\CompilerBasicTest.exe: no such file or directory
Process terminated with status 1 (0 minute(s), 0 second(s))
0 error(s), 1 warning(s) (0 minute(s), 0 second(s))
So even without the standard libraries, I’m having trouble with the most
basic compilation and building, but I have no clue what to do.
When I try to build a basic Hello World program:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
return 0;
}
I get the following messages in the build log
-------------- Build: Release in CompilerBasicTest (compiler: LLVM Clang
Compiler)---------------
clang++.exe -Weverything -fexceptions -O2 -c "E:\Files and
Documents\Development\CompilerBasicTest\main.cpp" -o obj\Release\main.o
E:\Files and Documents\Development\CompilerBasicTest\main.cpp:1:10:
fatal error: 'iostream' file not found
#include <iostream>
^~~~~~~~~~
1 error generated.
Process terminated with status 1 (0 minute(s), 0 second(s))
1 error(s), 0 warning(s) (0 minute(s), 0 second(s))
I also get a similar message for <cstdlib>. How do I get the standard C
and C++ libraries?
Once I get basic compilation working with the standard c / c++ include
files, I’m going to have to get it working for making actual windows
programs. I have TDM’s MinGW. Is there anything special I need to do to
get clang to recognize <windows.h> and other Windows OS include files,
or do I just point the compiler search paths at MinGW?
I’m sorry if these questions have already been asked and answered, but I
haven’t found a useful way to search the cfe-users archives. (Does the
BSD community have an acquired allergy to off-the-shelf forum software?
Just asking.)
Any help would be appreciated.
Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-users/attachments/20170906/2ac2eedb/attachment.html>
More information about the cfe-users
mailing list