compiling glaurung

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Uri Blass
Posts: 10280
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

compiling glaurung

Post by Uri Blass »

I have problems with compiling Glaurung Lodz 2007 with microsoft visual C++6

I know that this compiler is an old compiler but I think that it is better to have source code that no compiler have problems to compile it.

Here is the list of errors that I got

Compiling...
benchmark.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
bitbase.cpp
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
bitboard.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
book.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
color.cpp
direction.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
endgame.cpp
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
evaluate.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
history.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
main.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
material.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
mersenne.cpp
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
misc.cpp
move.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
movegen.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
movepick.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
pawns.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
piece.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
position.cpp
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
san.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
search.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
square.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.cpp(44) : error C2593: 'operator -' is ambiguous
d:\glaurung_lodz_2007\src\square.cpp(44) : fatal error C1903: unable to recover from previous error(s); stopping compilation
test.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
timeoday.cpp
tt.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
uci.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2059: syntax error : 'bad suffix on number'
d:\glaurung_lodz_2007\src\bitboard.h(54) : error C2146: syntax error : missing ';' before identifier 'L'
d:\glaurung_lodz_2007\src\bitboard.h(54) : fatal error C1004: unexpected end of file found
ucioption.cpp
d:\glaurung_lodz_2007\src\ucioption.cpp(216) : error C2039: 'clear' : is not a member of 'basic_string<char,struct std::char_traits<char>,class std::allocator<char> >'
value.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\square.h(87) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\value.h(126) : error C2593: 'operator -' is ambiguous
d:\glaurung_lodz_2007\src\value.h(126) : error C2514: 'Value' : class has no constructors
d:\glaurung_lodz_2007\src\value.h(43) : see declaration of 'Value'
d:\glaurung_lodz_2007\src\value.cpp(49) : error C2593: 'operator -' is ambiguous
d:\glaurung_lodz_2007\src\value.cpp(54) : error C2593: 'operator +' is ambiguous
d:\glaurung_lodz_2007\src\value.cpp(56) : error C2593: 'operator -' is ambiguous
Error executing cl.exe.

Glaurung_loza_2007.exe - 148 error(s), 0 warning(s)
User avatar
Jim Ablett
Posts: 1383
Joined: Fri Jul 14, 2006 7:56 am
Location: London, England
Full name: Jim Ablett

Re: compiling glaurung

Post by Jim Ablett »

Uri Blass
Posts: 10280
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: compiling glaurung

Post by Uri Blass »

Jim Ablett wrote:Hi Uri,

read here >

http://64.68.157.89/forum/viewtopic.php?t=14371

Jim.
I see that you suggest different compilers.

Note that I am used to microsoft visual C++6 and I simply do not like to change to a different compiler(Dann Corbit compiles for me faster exe by a faster compiler).

If you suggest using a different free compiler then I think that it may be productive to have step after step instruction how to compile and run glaurung with a different compiler with no errors.

Uri
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: compiling glaurung

Post by wgarvin »

Visual C++ 6 is pretty old, and notorious for not being able to compile code that works fine on other compilers.

You could try one of the free versions of MSVC 2005, they are much better: http://msdn.microsoft.com/vstudio/express/downloads/
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: compiling glaurung

Post by Tord Romstad »

Uri Blass wrote:I have problems with compiling Glaurung Lodz 2007 with microsoft visual C++6

I know that this compiler is an old compiler but I think that it is better to have source code that no compiler have problems to compile it.
Hello Uri,

Generally I tend to agree, but in this case your compiler seems to not support the most recent standards of the C++ programming language. I want my code to compile with all modern compilers on all common platforms, but I don't want to bother with supporting old and outdated language standards.

I've heard that the most recent versions of the Microsoft compiler can be downloaded for free, and can compile Glaurung's source code without errors. If you still want to use your old compiler, here are some instructions (untested, of course, but I think it should work):
Compiling...
benchmark.cpp
d:\glaurung_lodz_2007\src\square.h(79) : error C2593: 'operator +' is ambiguous
Lines 78-79 in square.h look like this:

Code: Select all

inline File operator+ &#40;File x, int i&#41; &#123; return File&#40;int&#40;x&#41; + i&#41;; &#125;
inline File operator+ &#40;File x, File y&#41; &#123; return x + int&#40;y&#41;; &#125;
I don't understand why your compiler doesn't accept this; the first of the two lines should give the compiler everything it needs to compile the second. The problem should be easy to fix, though. Just change the second line to the following:

Code: Select all

inline File operator+ &#40;File x, File y&#41; &#123; return File&#40;int&#40;x&#41; + int&#40;y&#41;); &#125;
Do the same thing for all the other locations in the source code where a similar error occurs.
d:\glaurung_lodz_2007\src\types.h(29) : error C2632: 'long' followed by 'long' is illegal
d:\glaurung_lodz_2007\src\types.h(30) : error C2632: 'long' followed by 'long' is illegal
Lines 29-30 in types.h:

Code: Select all

typedef unsigned long long uint64;
typedef signed long long int64;
Replace "unsinged long long" and "signed long long" with whatever your compiler use for unsigned and signed 64-bit integers.
d:\glaurung_lodz_2007\src\ucioption.cpp(216) : error C2039: 'clear' : is not a member of 'basic_string<char,struct std::char_traits<char>,class std::allocator<char> >'
value.cpp
Uh - not sure about this one. I am almost as uncomfortable with string manipulation in C++ as in plain C (shudder). Perhaps it would work to simply replace the whole function with this:

Code: Select all

  void UCIOption&#58;&#58;set_value&#40;const std&#58;&#58;string& newValue&#41; &#123;
    currentValue = newValue;
  &#125;
I suspect this won't work, though. There must be some reason why I wrote the function as I did, instead of using the superficially more obvious approach above.

All the other errors seem to be duplicates of those I have addressed above.

Tord
Uri Blass
Posts: 10280
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: compiling glaurung

Post by Uri Blass »

wgarvin wrote:Visual C++ 6 is pretty old, and notorious for not being able to compile code that works fine on other compilers.

You could try one of the free versions of MSVC 2005, they are much better: http://msdn.microsoft.com/vstudio/express/downloads/
I believe that I downloaded in the past this compiler but I am simply not sure if I use it correctly and I did not get step by step instructions what to do.

I started by
file->new->project->empty project and simply try to add existing items to the project when I am not sure if I need to add all the h file as header files and I am not sure what is the meaning of resource file(I know only about source files and header files)

I see now that there is an option
file->new-project from existing files but unfortunately I do not know how to use it because the computer asks me too many questions that I do not know to answer and I do not like to guess by try and error

first question is
how do you want to build the project
(I guess that I should answer console application project) but then
I get the question:
what setting do you want for the debug configuration and I simply have no idea what to reply.

Uri
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: compiling glaurung

Post by wgarvin »

You can use the compiler from a command prompt if you want, just search for vcvars32.bat and run that first.

I find it a lot simpler to use the IDE though. (Edit: don't make a project from existing files, just start with a New Project"). You should select "Win32 Console application" and select "empty project".

Ignore or delete the Resources thing. You can just add all your source and header files to the project in the same folder, if you want. Ctrl+Shift+B will build all the projects in the "solution" (i.e. your workspace).

If you right-click on the project, the context menu will have options like "Clean" and "Build", and also an important one at the bottom is "Properties". That's where you can change all the compiler and linker settings. It only shows one configuration at a time (e.g. "Win32 Debug") so if you want to change something like an include directory, you can select "All Configurations" or something and it will let you change it for all of them at the same time.
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: compiling glaurung

Post by wgarvin »

Tord Romstad wrote: Lines 29-30 in types.h:

Code: Select all

typedef unsigned long long uint64;
typedef signed long long int64;
Replace "unsinged long long" and "signed long long" with whatever your compiler use for unsigned and signed 64-bit integers.
I think for MS compilers you can use something like

Code: Select all

typedef unsigned __int64 uint64;
typedef signed __int64 int64;
User avatar
Bo Persson
Posts: 243
Joined: Sat Mar 11, 2006 8:31 am
Location: Malmö, Sweden
Full name: Bo Persson

Re: compiling glaurung

Post by Bo Persson »

Tord Romstad wrote:
Uri Blass wrote:I have problems with compiling Glaurung Lodz 2007 with microsoft visual C++6

I know that this compiler is an old compiler but I think that it is better to have source code that no compiler have problems to compile it.
Hello Uri,

Generally I tend to agree, but in this case your compiler seems to not support the most recent standards of the C++ programming language.
In fact it doesn't support ANY standard for C++, because it was released before the first one.

VC6 is the Ford model T of compilers. You can't limit yourself to that!

.
User avatar
Roman Hartmann
Posts: 295
Joined: Wed Mar 08, 2006 8:29 pm

Re: compiling glaurung

Post by Roman Hartmann »

Uri Blass wrote:
wgarvin wrote:Visual C++ 6 is pretty old, and notorious for not being able to compile code that works fine on other compilers.

You could try one of the free versions of MSVC 2005, they are much better: http://msdn.microsoft.com/vstudio/express/downloads/
I believe that I downloaded in the past this compiler but I am simply not sure if I use it correctly and I did not get step by step instructions what to do.

I started by
file->new->project->empty project and simply try to add existing items to the project when I am not sure if I need to add all the h file as header files and I am not sure what is the meaning of resource file(I know only about source files and header files)

I see now that there is an option
file->new-project from existing files but unfortunately I do not know how to use it because the computer asks me too many questions that I do not know to answer and I do not like to guess by try and error

first question is
how do you want to build the project
(I guess that I should answer console application project) but then
I get the question:
what setting do you want for the debug configuration and I simply have no idea what to reply.

Uri
Hi Uri,
just create a new project and then choose console application and empty project. You can then add existing sources to that project.

Usually I use the compiler from the commandline though. If I remember correctly I didn't even had to set any paths as it was automatically done during install.

Roman