Thread: Getting ready for C++...

  1. #1
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547

    Getting ready for C++...

    Up front... I'm not interested in high level libraries or graphics libraries. I'm quite content working in WinAPI and have no intentions of abandoning it. So please, don't even go there.

    Here's my problem...
    I'm trying to set up an x86/x64 build environment using C++ and a basic IDE.

    I will only be developing for Windows, so I don't need cross-platform capability and have thus settled on the VC++ compiler that comes with the windows SDK. I have both 32 and 64 bit versions as well as the headers and libs from the SDK itself. Building manually seems to work well enough, in that I've managed "hello world" in all flavours for both GUI and Console. So I'm relatively confident I have a working compiler setup.

    Frankly the IDE is driving me right up the wall... It seems that every one of them has some major flaw or shortcomming that rules them out. Basically I would like to be able to set up a project, work the source code, then have a choice of build modes: x86debug, x86release, x64debug and x64release... plus maybe a "rebuild all" option.

    I don't need all the editor bells and whistles... In fact I'd be happy with syntax highlighting and brace matching. Code completion, call tips and all that may be nice to have but they are not necessities.

    What I need is the build environment.... The "compiler driver" in the IDE. But, that's where most fall flat on their faces... so any suggestions you can give I will be happy to hear... (FWIW... I already tried this with Code::Blocks without much luck.)

  2. #2
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    You can set up different solution configurations directly in Visual Studio (which I am guessing you have since you have the compiler?).
    Just go to the arrow in the "Debug/Release" list and select configuration manager. Here you can change build configuration, platform target, all with different settings and command-line options.
    I am guessing that's what you're asking for.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  3. #3
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by Elysia View Post
    You can set up different solution configurations directly in Visual Studio (which I am guessing you have since you have the compiler?).
    Just go to the arrow in the "Debug/Release" list and select configuration manager. Here you can change build configuration, platform target, all with different settings and command-line options.
    I am guessing that's what you're asking for.
    Actually no, I don't have visual studio. The compilers I'm using were supplied with the Windows7 Software Development Kit, without an IDE. (VC++ 9.0)

    What I'd like to see is a pulldown list that offers...
    Code:
    Build x86 debug
    Build x86 release
    Build x64 debug
    Build x64 release
    Build all
    Clean
    Anywho... I was sort of hoping I could avoid VS... but I guess it's worth checking out.
    Last edited by CommonTater; 05-09-2011 at 10:38 AM.

  4. #4
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Yeah, VS can absolutely do that. Clean and rebuild all are separate commands on the build menu.
    I'm sure other IDEs can offer the same functionality, but since I've really only using Visual Studio and haven't familiarized myself with Qt Creator yet, that's all the advice I can give, at least.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  5. #5
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by Elysia View Post
    Yeah, VS can absolutely do that. Clean and rebuild all are separate commands on the build menu.
    I'm sure other IDEs can offer the same functionality, but since I've really only using Visual Studio and haven't familiarized myself with Qt Creator yet, that's all the advice I can give, at least.
    Much appreciated... downloading now...

    Anyone else?

  6. #6
    'Allo, 'Allo, Allo
    Join Date
    Apr 2008
    Posts
    639
    Pretty much any decent IDE can do that after you setup the project. VS has two listboxes for it, CodeBlocks has one.

    Man up. You aren't going to find an IDE that has only what you want. Either don't use one, or get used to the one you use having more options than you'll ever need. I've used VS 2008 for three years now and haven't ever clicked on 80% of the menu and toolbar buttons. It doesn't worry me that these unused features might add up to a gig of dead space on my hard drive, it's just not worth worrying about.

  7. #7
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by adeyblue View Post
    Pretty much any decent IDE can do that after you setup the project. VS has two listboxes for it, CodeBlocks has one.

    Man up. You aren't going to find an IDE that has only what you want. Either don't use one, or get used to the one you use having more options than you'll ever need. I've used VS 2008 for three years now and haven't ever clicked on 80% of the menu and toolbar buttons. It doesn't worry me that these unused features might add up to a gig of dead space on my hard drive, it's just not worth worrying about.
    Please don't make these kinds of assumptions. I don't expect to find a perfect IDE... But I do need certain minimal functionality.

    CodeBlocks *does not* support multiple targets in the way you're describing. To build x86 and x64 from the same source code I have to create two projects and copy the code back and forth between them. Believe me... I already tried it... Plus Code::Blocks has a couple of really nasty bugs right now that kind of rule it out... It constantly looses it's default settings, meaning I have to repeatedly select the default compilers over and over... and the build options get all wiped out every time I do...

  8. #8
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    5,108
    I've been at this for over 20 years, still haven't found an IDE that I really like to use.

    I don't presently use an IDE. I only use an editor with syntax highlighting I wrote and a tool like "make" for building.

    If you are comfortable with the tools "Pelle's" provides, why not try writing your source there and compiling with a generic "makefile" until you have more experience with C++?

    It constantly looses it's default settings, meaning I have to repeatedly select the default compilers over and over... and the build options get all wiped out every time I do...
    I've seen this with other tools that, for whatever reasons, runs happily as a restricted user account, but then when it tries to save some configuration it silently fails when trying to write to restricted areas.

    Try running as an administrator a few times and see what happens.

    Soma

  9. #9
    Registered User
    Join Date
    May 2010
    Posts
    4,633
    With Code::BLocks you should be able to define a new target to compile for building 64 bit or 32 bit. Select Project, Properties, Build Targets. Plus you should be able to use the Microsoft compiler if you want.

    Jim

  10. #10
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by phantomotap View Post
    I've been at this for over 20 years, still haven't found an IDE that I really like to use.
    I found one... (Pelles, obviously) but it's a one trick poney at the moment... Pelles IDE == Pelles C... joined at the hip.

    I don't presently use an IDE. I only use an editor with syntax highlighting I wrote and a tool like "make" for building.
    Odd you should mention this... I was just sitting here contemplating a "compiler driver" (i.e. a free standing app) to use along side a syntax highlighting editor ... Kind of a UYOE tool... (Use Your Own Editor)

    Try running as an administrator a few times and see what happens.
    Yeah did that... not the issue. Apparently there's some sort of bug I've discovered...

  11. #11
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by jimblumberg View Post
    With Code::BLocks you should be able to define a new target to compile for building 64 bit or 32 bit. Select Project, Properties, Build Targets. Plus you should be able to use the Microsoft compiler if you want.

    Jim
    Actually you only get two build targets in Code::Blocks... Release and Debug... and far as I can tell that pull down is not extensible.

  12. #12
    Registered User
    Join Date
    Aug 2003
    Posts
    1,218
    You can also check into eclipse and NetBeans. Haven't used any of those for C/C++ dev so don't know if they give you the functionality you want but thought i should throw them in there.

  13. #13
    Banned
    Join Date
    Aug 2010
    Location
    Ontario Canada
    Posts
    9,547
    Quote Originally Posted by Shakti View Post
    You can also check into eclipse and NetBeans. Haven't used any of those for C/C++ dev so don't know if they give you the functionality you want but thought i should throw them in there.
    I have taken a look at them... but again the same limitation... Release and Debug, when I actually need release 32, release 64, debug 32 and debug 64...

    Thank you for taking the time to offer the suggestion, it's appreciated.

  14. #14
    Registered User
    Join Date
    May 2009
    Posts
    4,183
    Quote Originally Posted by CommonTater View Post
    Actually you only get two build targets in Code::Blocks... Release and Debug... and far as I can tell that pull down is not extensible.
    This is NOT true; the default is two build targets if you use the wizard; the Code::Blocks project has about a dozen target.
    Look under project properties "Build Target".

    Tim S.

  15. #15
    Registered User
    Join Date
    May 2010
    Posts
    4,633
    Actually you only get two build targets in Code::Blocks... Release and Debug... and far as I can tell that pull down is not extensible.
    You should be able to add as many targets as you like, Select Project from the main menu, then select Properties, then select Build Targets, the in the Build Targets pane select Add, then type in the new target name. Then you will need to select this target and change the build options to the correct values.

    Jim

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Ready for GUI
    By bertazoid in forum C Programming
    Replies: 7
    Last Post: 10-31-2008, 05:08 AM
  2. are you ready?
    By Aran in forum A Brief History of Cprogramming.com
    Replies: 11
    Last Post: 05-12-2002, 01:38 PM
  3. Are you ready?
    By lostminds in forum Game Programming
    Replies: 6
    Last Post: 05-08-2002, 02:11 PM
  4. ready?!
    By pode in forum Game Programming
    Replies: 2
    Last Post: 03-08-2002, 01:53 AM
  5. Am I ready????
    By aresashura in forum Game Programming
    Replies: 12
    Last Post: 12-20-2001, 11:08 PM