Vanilla Direct X 9

Started by
7 comments, last by AN_D_K 20 years, 8 months ago
How do I get my program working on a computer that has just the Direct X drivers installed and not the SDK? My program runs great on my computer with the SDK on but when I try running my program on another computer with just the drivers I keep being told that d3dx9d.lib is missing.
Advertisement
Sure those other puters ahve dx9 installed?
I tried to install it again to make sure. I''m sure it has DirectX 9 on.
Try a release build. Debug DirectX libraries may require parts of the SDK, and I can see from the d at the end of the lib name you are using debug libraries.
You''re not being told d3dx9d.lib is missing, you''re being told d3dx9d.dll is missing, or atleast that''s my bet.
Include d3dx9.lib in your project instead, since d3dx9d isn''t shipping with the runtimes.
I''m pretty sure that d3dx9d is a debug file (hence the ''d at the end). In your program, make sure you''re linking d3dx9 and not d3dx9d.

Try running using the dependency walker on YOUR computer to see what files it''s using. The dependency walker is one of the most useful tools for VC++. You can find it in the start menu under VC++->Tools->Depends. If you see anything funky, fix it in your code.

Lastly, try switching direct3d debug/release modes to see if they make a difference.

---
Brent Gunning | My Site
Yeah, I think the reason is because I was building in debug mode. Didn''t think of that. Thanks.

How do I go about making a release build. I''ve know how to "set active configuration" but when I build I get lots of errors saying headers can''t be found and unexpected end of files.
It''s good that you already have SDK installed.

(Assumin'' you''re usin'' VC6.0) OK, now go open one of the
projects under the SDK. I choose "Pick" to explain to you. The
path for me is C:\DXSDK\Samples\C++\Direct3D\Pick.

When the project is opened, do a "Alt+F7" to open up
the "Project Settings" dialog box. Go to "Settings For", and
select "Win32 Release". Now go to "Link" tab, compare those
entries under "Object/library modules" with yours (project
settings). You should see some differences.

For the "unexpected end of file", try addin''
#include "StdAfx.h" at the beginnin'' of that CPP file which
this error occurs. Should help I guess.




D3DX comes in three flavors:

d3dx9d.lib - Debug, DLL
d3dx9dt.lib - Debug, static library
d3dx9.lib - Release, static library

The DLL is not part of the end-user runtime so you''ll want to link with one of the others. It''s okay to do a debug build, just use d3dx9dt.lib in that case.
Donavon KeithleyNo, Inky Death Vole!

This topic is closed to new replies.

Advertisement