Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't find d3dcompiler_43.dll for DirectX programming

I am trying to learn DirectX Programming. But I have hit a snag.

I seem to be missing this file: d3dcompiler_43.dll

I have installed (in this order):

  1. Visual Studio 2012
  2. Windows 8
  3. Windows Phone 8 SDK
  4. Windows 8 SDK

I figured I need a DirectX SDK, but this link says I do not:

Starting with Windows 8, the DirectX SDK is included as part of the Windows SDK.

Should I just install the DirectX Distributable? I am worried that will give me the dll but I will be missing other things too...

Here is my exact error I am getting:

Unable to load DLL 'd3dcompiler_43.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

Update: I ran dxdiag and it says I have DirectX 11 installed... Not sure why I can't make this work.

like image 489
Vaccano Avatar asked Nov 24 '12 18:11

Vaccano


People also ask

Where does d3dcompiler_43 dll go?

The d3dcompiler_43. dll file is a Dynamic Link Libraries file used by DirectX and it is commonly found in the same folder as the program using it but it can also be found in the Windows system directories. This file is quite important for games and graphics programs.

What is d3dcompiler_43 dll in computer?

The d3dcompiler_43. dll is a Dynamic Link Libraries file utilized by DirectX. This is an important file for games and graphics applications. Missing DLL errors occur when the OS can't find a required DLL file for a program or if the DLL is corrupted somehow.

Could not find d3dx9_43 dll installed on your system?

Chances are, upgrading to the latest version of DirectX will fix the d3dx9_43. dll not found error. Microsoft often releases updates to DirectX without updating the version number or letter, so be sure to install the latest release even if your version is technically the same.


1 Answers

I found the answer here: http://msdn.microsoft.com/en-us/library/windows/desktop/ee663275.aspx

It says:

Any project that uses run-time shader compilation must have D3DCOMPILER_46.DLL copied to the local executable path for the project. This DLL is available in this sub-directory of the Windows SDK installation under %ProgramFiles(x86)%\Windows Kits\8.0\Redist\D3D\arch where arch is x86 and x64.

like image 199
Vaccano Avatar answered Sep 18 '22 16:09

Vaccano