Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

LINK : fatal error LNK1104: cannot open file 'dplayx.lib', when trying to compile Dark GDK

Posted on 2008-11-01
8
Medium Priority
?
1,771 Views
Last Modified: 2013-12-14
Hello experts :-)

I am Visual C++ newbie.

I am trying to build and run sample projects provided with Visual C++ 2008 express edition but get such an error:

LINK : fatal error LNK1104: cannot open file 'dplayx.lib'

I have this file in two locations on my computer:

D:\Program Files\Microsoft DirectX SDK (August 2007)\Lib\x64
D:\Program Files\Microsoft DirectX SDK (August 2007)\Lib\x86

Question:

how do I guide VC++ to find/ open this file?
And which one to choose?

Thank u

panJames
0
Comment
Question by:panJames
  • 4
  • 3
8 Comments
 
LVL 9

Expert Comment

by:mgonullu
ID: 22856991
Did you set the path of the library directory to your project setting?
0
 

Author Comment

by:panJames
ID: 22857402
How can I do it?

panJames
0
 
LVL 9

Expert Comment

by:mgonullu
ID: 22857478
http://msdn.microsoft.com/en-us/library/wkze6zky(VS.80).aspx

Right click on Solution, then click on References then add the path
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:panJames
ID: 22857527
I did add my path into:

<right click> References -> Framework and References -> Add Path

D:\Program Files\Microsoft DirectX SDK (August 2007)\Lib\x86

but it didn't help and I still get the same error message:

------ Build started: Project: Dark Dungeon, Configuration: Release Win32 ------
Linking...
LINK : fatal error LNK1104: cannot open file 'dplayx.lib'
Build log was saved at "file://d:\Program Files\The Game Creators\Dark GDK\Samples\Visual Studio 9\Dark Dungeon\Release\BuildLog.htm"
Dark Dungeon - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


panJames
0
 
LVL 9

Expert Comment

by:mgonullu
ID: 22857556
can you see the file in the Game directory?
if not install it from here:http://www.cubic.org/player/doc/node69.htm


Also see this
0
 

Author Comment

by:panJames
ID: 22857649
I copied dplayx.lib to Game folder, now it compiles (why do I need to copy lib files into the Game folder anyway?). Now I get a bunch of other error messages:

------ Build started: Project: Dark Dungeon, Configuration: Release Win32 ------
Linking...
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPSPGUID_TCPIP referenced in function "public: int __thiscall CNetwork::SetNetConnections(int)" (?SetNetConnections@CNetwork@@QAEHH@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPSPGUID_IPX referenced in function "public: int __thiscall CNetwork::SetNetConnections(int)" (?SetNetConnections@CNetwork@@QAEHH@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _CLSID_DirectPlay referenced in function "private: static int __stdcall CNetwork::StaticGetConnection(struct _GUID const *,void *,unsigned long,struct DPNAME const *,unsigned long,void *)" (?StaticGetConnection@CNetwork@@CGHPBU_GUID@@PAXKPBUDPNAME@@K1@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _IID_IDirectPlay4A referenced in function "private: static int __stdcall CNetwork::StaticGetConnection(struct _GUID const *,void *,unsigned long,struct DPNAME const *,unsigned long,void *)" (?StaticGetConnection@CNetwork@@CGHPBU_GUID@@PAXKPBUDPNAME@@K1@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPAID_ComPort referenced in function "public: int __thiscall CNetwork::FindNetSessions(char *)" (?FindNetSessions@CNetwork@@QAEHPAD@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPSPGUID_SERIAL referenced in function "public: int __thiscall CNetwork::FindNetSessions(char *)" (?FindNetSessions@CNetwork@@QAEHPAD@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPAID_Phone referenced in function "public: int __thiscall CNetwork::FindNetSessions(char *)" (?FindNetSessions@CNetwork@@QAEHPAD@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPSPGUID_MODEM referenced in function "public: int __thiscall CNetwork::FindNetSessions(char *)" (?FindNetSessions@CNetwork@@QAEHPAD@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPAID_INet referenced in function "public: int __thiscall CNetwork::FindNetSessions(char *)" (?FindNetSessions@CNetwork@@QAEHPAD@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _DPAID_ServiceProvider referenced in function "public: int __thiscall CNetwork::FindNetSessions(char *)" (?FindNetSessions@CNetwork@@QAEHPAD@Z)
multiplayer.lib(CNetwork.obj) : error LNK2019: unresolved external symbol _IID_IDirectPlayLobby2A referenced in function "public: int __thiscall CNetwork::FindNetSessions(char *)" (?FindNetSessions@CNetwork@@QAEHPAD@Z)
.\Release/Dark Dungeon.exe : fatal error LNK1120: 11 unresolved externals
Build log was saved at "file://d:\Program Files\The Game Creators\Dark GDK\Samples\Visual Studio 9\Dark Dungeon\Release\BuildLog.htm"
Dark Dungeon - 12 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


panJames
0
 
LVL 9

Accepted Solution

by:
mgonullu earned 1350 total points
ID: 22858074
0
 
LVL 1

Assisted Solution

by:suryaxchange
suryaxchange earned 150 total points
ID: 22865035
Let me tell you some basics regarding the libraries:

When a code is using any library, the library need to be in the current directory where the created executable will be residing when compiling the code or set the environment variable to add the path where the library is residing.

Or specify the path in the visual studio environment.In visual studio application

GoTo Project Menu->Properties option

Here select linker option in the left tree view. In the right list control you have a option by name additional library directories there you can specify absolute/relative path where the library is residing.

If the specified library still uses any further additional libraries then even those libraries paths need to specified. I think in your case I see the same problem.

-Surya
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows you how to optimize memory allocations in C++ using placement new. Applicable especially to usecases dealing with creation of large number of objects. A brief on problem: Lets take example problem for simplicity: - I have a G…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
THe viewer will learn how to use NetBeans IDE 8.0 for Windows to perform CRUD operations on a MySql database.
The viewer will learn how to clear a vector as well as how to detect empty vectors in C++.
Suggested Courses

564 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question