Compilers.

Started by
5 comments, last by Telastyn 18 years, 9 months ago
Bleh. I very much dislike compilers, linkers, IDE's and the bunch. Especially after spending half my day [unsuccessfully] doing something which should take 15 minutes at most. Venting finished, some background. I'm in the process of starting to do a little windows infrastructure work for my most recent re-working of a game. Nothing fantastic, just a little d3d/d3dx 9 code, and the use of hash_map's and sstreams. First try was VC++ 6, overtop the free 2003 release [because of an earlier vc++ 6 issue...] hash_maps don't compile nicely. Some _STDEXT_BEGIN/END macro/definition that didn't seem to make it in the 2003 release, or I misplaced somewhere. Next try was a run to the store. I'd gotten VC6 in the store afterall, and it was about time to upgrade. No such luck. Fair enough. devcpp has its fans here, and I'd rather not try to understand the need for an SQL server anyways. Let's try bloodshed's version 4. No need for beta tomfoolery. Hrm, no sstream? Maybe it's got an old version of gcc [had to upgrade gcc on the non-windows dev machine recently...]. devcpp 5... bunch of redefinition errors. Oh, it includes directX headers, great. But not the d3dx headers. Okay, mix and match from the SDK. Linker errors. Oh yeah, add in the SDK lib directory. Cores ld... load the ld core into vc++, core vc++...... lovely. After about an hour I find that the SDK libs don't work with ld. Because that's an obvious conclusion when they both end up into a windows executable. Okay okay. There's devpack things which apparently will nicely download the libraries for you. 5 has no directX. Okay, maybe it's just new. 4 has no directX. Hrmm... Check the official site. Nothing there either. After another hour or two fiddling with devcpp4 and vc6 trying to get their inadequacies handled, I tossed up the white flag. It shouldn't be this annoyingly difficult! Are mail ordering in vc++ 2003, changing my code to not use hash_maps, or doing black library magic my only real options to make these relatively simple requirements work? Or is this just something I've totally missed in my spotty self-taught path?
Advertisement
Never used it, but many people here like it, and since it's from MS I guess it should work fine with DX and D3D.
So did you try VS 2005 Beta?
code::blocks but I think that it might be just like dev.
Quote:Original post by SKATIN_HARD
code::blocks but I think that it might be just like dev.


Code::blocks is not a compiler, it's an IDE.
Quote:Original post by Raduprv
Never used it, but many people here like it, and since it's from MS I guess it should work fine with DX and D3D.
So did you try VS 2005 Beta?


I'd put this off since the download was going to be lengthy with my pokey internet connection these days...

After actually downloading it, it seems like the included hash_map has a different set of template parameters [the 2005 one looks to exclude the hashing functor, and require a 'less' comparator whereas the one I'm used to wants an 'equal_to' comparator].

I'm sure I could now go looking for a 3rd party library, or write some sort of #if _WIN32 twine and superglue... bah. Bah!

With Dev-C++, did you make sure to download the DX package first? And also, 5 has been in beta for a long time. It used to has some really annoying bugs, but now it is pretty stable.
Scott SimontisMy political blog
Quote:
With Dev-C++, did you make sure to download the DX package first?


What DX package? There's none in 5's little browser, or in 4 or 5's package list on the official site. From some of the insinuations I saw during my search it seems like it was pulled recently due to legal problems.

Anyways, it looks like MS' hash_map provides a std::string hash so the #ifndef sort of kludge isn't so bad.

This topic is closed to new replies.

Advertisement