Cannot open include file "d3dx9.h"
Edit: Of course, immediately after working on it for an hour then posting here, I found the stupid mistake...
I'm getting compiler errors when trying to #include <d3dx9.h>
in a project. I'm receiving "fatal error C1083: Cannot open include file: 'd3dx9.h': No such file or directory".
- I do have the DirectX SDK installed (I also just tried reinstalling it to no avail).
- In the Project Properties:
- VC++ Directories are set to "
$(DXSDK_DIR)Include;$(IncludePath)
" and "$(DXSDK_DIR)Lib\x86;$(LibraryPath)
" for Include and Library directories respectively for all configurations—and the environment variable%DXSDK_DIR%
points toC:\P开发者_开发技巧rogram Files (x86)\Microsoft DirectX SDK (June 2010)\
as expected. - C/C++ > General settings has
$(DXSDK_DIR)include
listed in the Additional Include Directories - Linker > Input > Additional Dependencies has
d3dx9d.lib
included for Debug andd3dx9.lib
included for Release configuration.
- VC++ Directories are set to "
- I am able to successfully compile and run tutorial projects from the DirectX Sample Browser.
- Visual Studio's Intellisense/autocomplete will find
d3dx9.h
and suggest type and function names that are within the file (and not included through anything else I'm#include
ing) so it seems that Intellisense can find it.
Any suggestions on what I'm forgetting or what else to try?
Thanks
you forgot one thing:
- Go to VC++ Directories -> Library Directories
- add
$(DXSDK_DIR)LIB\x86
- apply.
Done. Hope this helps
You should make sure you have ALL paths sorounded by quotes (").
Instead of $(DXSDK_DIR)include
you should have "$(DXSDK_DIR)include"
I didn't realize that one of the other projects in the solution was #include
ing a file that was #include
ing a file that was #include
ing d3dx9.h
and I hadn't added those paths to that project.
/facepalm
Find the file on your computer, and add it's folder to the properties of your project.
Assuming you have visual studio: Properties/C/C++/General/Additional Include Libraries
.
I tried all of these suggestions and none worked.
Turns out the $(DXSDK_DIR) variable doesn't work if you install DirectX while Visual Studio is still running. The solution for me was to restart Visual Studio (+ adding the paths in the solutions listed above, of course).
精彩评论