Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / Build warning...

Author
Message
Zeal
21
Years of Service
User Offline
Joined: 10th Oct 2002
Location: Colorado Springs, CO
Posted: 23rd Feb 2006 10:54
Been getting this build warning...

"LIBCD.lib(crt0init.obj) : warning LNK4098: defaultlib 'libc.lib' conflicts with use of other libs; use /NODEFAULTLIB:library"

While it doesnt cause any real problems (things build & run fine), it is kinda annoying. Havent tryed to rule out what part of my code is causing it, just curious if anyone has any idea what might be causing it, or where I should look.

All you need is zeal
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 23rd Feb 2006 10:59
Try using release mode instead of debug mode.

Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
Smoke me a computer chip, I'll be baking breakfast.
Zeal
21
Years of Service
User Offline
Joined: 10th Oct 2002
Location: Colorado Springs, CO
Posted: 23rd Feb 2006 11:13
Hmm well release mode gives me these link warnings



Is that normal?

That one build warning is gone now though... whats the difference between release and debug mode? What did that warning mean anyway?

Not that big a deal, things still run in either 'mode', just curious.

All you need is zeal
OSX Using Happy Dude
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 23rd Feb 2006 11:29 Edited at: 23rd Feb 2006 11:31
Those link warns can be ignored - its just telling you that some library functions aren't added to your program because they are not called.

The difference between debug and release mode is that debug mode has extra code added for debugging, and thus could be slower than release mode. Optimisations are generally limited or not existance, sometimes producing a fairly different result to release mode.

Debug mode will use the debug versions of C libraries.

Debug code (in VS6 anyway) could be invalid, whereas in release mode, the same code was fine - one reason why I dont trust it. In addition, it generally causes extra problems that wont appear in release mode.

Personally I see no point in debug mode, but some fruit & nutcases worship at the feet of it...

Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
Smoke me a computer chip, I'll be baking breakfast.
Barnski
18
Years of Service
User Offline
Joined: 26th Jan 2006
Location: Switzerland, Zurich
Posted: 23rd Feb 2006 13:16
With Debug mode you can better watch the content of variables, setting breakpoints, going through code step by step, and all this with a real synchronous execution of your code.

While in Release mode some optimisations are done with your assembly code. for instance if you use the same value in two variables, then in release mode only one variable is used. That and alot of other reasons make it impossible to use the debugger with release code.

And as Stinky Stoat already mentioned, there are alot of debugging information added into the exe, which can be used by the debugger, to help synchronize code step through.


So, to put it together, use debug mode when you are developing your applications, and if you want to release them, use the release version to compile it.
I haven't had any run-issues so far with debug mode in VS 2003.. as Stinky Stoat mentioned that with VS6 it was the case... (can't confirm that though).

After all, the Debugger is just a development tool that might help you develop your applications faster, and with more ease, but its up to you whether you use it or want to rely on print statements, or, if you are perfect, never make mistakes

greets,
Barnski

-- I just started with DarkSDK, by translating DBP Projects. --

Login to post a reply

Server time is: 2024-05-06 05:04:48
Your offset time is: 2024-05-06 05:04:48