DirectX 9 and August 2009 DirectX SDK
Hi again,
I just did a complete install of Windows 7 on my computer, and now after reinstalling my compiler (Visual Studio 2008 Professional) and the DirectX SDK (August 2009), when I try to compile my DirectX programs that I wrote on Vista, I get compile errors saying that d3dx9.h cannot be found and and linker errors saying that d3dx9.lib cannot be linked. I have also gotten a lot of unresolved external symbols when using DirectX functions.
These programs compiled and ran perfectly on Vista.
I've installed the DirectX SDK (August 2009), and set up all of the include and lib paths.
I thought I was getting the errors because of the SDK version, but when I installed the August 2007 version (the version I was using before upgrading my operating system), I still got the same errors.
Installing the latest DirectX runtimes seemed to help (it got rid of the unresolved external symbols, apparently), but I'm still getting the linker and include errors.
Any ideas on how to fix this/ Can you even develop DirectX 9 programs on Windows 7 and does the August 2009 DirectX SDK even support DirectX 9?
Thanks
First check - in Visual Studio 2008, under Tools->Settings->Projects and Solutions->VC++ Directories, do your include and library directories show up?
Yes, they show up, and they are at the top of the lists.
I'm also getting the unresolved external symbols again:
_D3DXCreateFontW@48
_D3DXCreateLine@8
_D3DXCreateTextureFromFileExW@56
...
I'm also getting the unresolved external symbols again:
_D3DXCreateFontW@48
_D3DXCreateLine@8
_D3DXCreateTextureFromFileExW@56
...
I tried reinstalling the SDK but still no luck. I also tried the SDK I was using before (August 2007), but it didn't work either.
Is this a problem with using DirectX 9 on Windows 7? Is it a problem with using the August 2009 SDK for DirectX 9? What can I do to fix this?
Is this a problem with using DirectX 9 on Windows 7? Is it a problem with using the August 2009 SDK for DirectX 9? What can I do to fix this?
can you list the paths to the directX directories that you have?
Also, are you using 64-bit? If so, remember that the program files folder for x86 stuff is program files (x86).
Also, are you using 64-bit? If so, remember that the program files folder for x86 stuff is program files (x86).
Nevermind, I got it working.
I was using the x64 library folder and switching to the x86 folder fixed the problem.
Can you expain why this is? I'm using the 64-bit version of Windows 7, so why would I have to use the x86 version of the DirectX libraries?
I was using the x64 library folder and switching to the x86 folder fixed the problem.
Can you expain why this is? I'm using the 64-bit version of Windows 7, so why would I have to use the x86 version of the DirectX libraries?
Quote:Original post by Dasil
Nevermind, I got it working.
I was using the x64 library folder and switching to the x86 folder fixed the problem.
Can you expain why this is? I'm using the 64-bit version of Windows 7, so why would I have to use the x86 version of the DirectX libraries?
You need to be building a 64-bit executable to link with the 64-bit DX binaries. See this.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement