• Advertisement

Archived

This topic is now archived and is closed to further replies.

I need help!!!

This topic is 5842 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have a problem compiling a game I am trying to make. I have Microsoft Visual C++ 6.0 and the compile error is a linker error. I included all the necessary files and the error was: GPDUMB1.OBJ : error LNK2005: "struct IDirectDraw * lpdd" (?lpdd@@3PAUIDirectDraw@@A) already defined in Game.obj LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/game.exe : fatal error LNK1120: 1 unresolved externals Error executing link.exe. The GPDUMB1 is an include file for my game. If you happen to have come accros this, or just know the problem; pleasse respond to me at: daddy2phatty@aol.com -thank you!!! Edited by - vampyro on January 22, 2002 6:13:46 PM

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
try putting this at the top of the gpdumb1 header file:

#ifndef __GPDUMB1_HEADER__
#define __GPDUMB1_HEADER__

and put this at the end

#endif

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Well you''ve got two problems here...

GPDUMB1.OBJ : error LNK2005: "struct IDirectDraw * lpdd" (?lpdd@@3PAUIDirectDraw@@A) already defined in Game.obj

This is a pretty intresting error, what it''s saying is that there is already a value with the name lpdd assigned to it. From the looks of it, your using the Windows Game Programming for Dummies gpdumb1.cpp and gpdumb2.cpp. Now if you open those two files I believe you''ll find that IDirectDraw *lpdd; is defined in both of them (Note: this shouldn''t be a problem because Andre Lamothe put in the ifndef defines to protect you from this type of error but if you removed them for some reason you''ll want to put them back). Other than that it should work fine.

The second error is the infameous LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main . It''s sister error is LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _WinMain. These errors happen when you create the wrong project type in Visual C++. The best way to determine how to fix this is to look at the code for a brief moment. If the code has a function called WinMain() then you need to create a Win32 Application. If the code has a function called main() then you need to create a Win32 Console Application. The error happens when your code has a main() and you create a win32 application, or if your code has a WinMain() and you create a win32 console application.

I''m pretty sure if you fix the second error the first will fix itself...so give it a shot.

Share this post


Link to post
Share on other sites
jeez!!!! how did u learn all that???how long did it take to learn that???

Share this post


Link to post
Share on other sites
sometimes a day... sometimes a week... sometimes never.. that thing, i think can be learn in one day, try to read a book instead of reading articles at the internet, i think it''s more complete,

Share this post


Link to post
Share on other sites

  • Advertisement