Civilization IV will give you these error messages in Windows 8.1 64-bit:-
- “The program can’t start because D3DX9_32.DLL is missing from your computer. Try reinstalling the progrom to fix the problem”; and
- “Error loading shader libraries”
If these solutions do not work:-
- re-installing Civilization IV in “compatibility mode” as mentioned in Microsoft Community; or
- running “dxwebsetup.exe” to re-install DirectX version 9 as mentioned in Microsoft Community;
Then these will 100% solve the problems:-
- download “d3dx9_32.dll”, unzip and copy to folder “C:\Windows\SysWOW64”; and
- download “d3dx9_31.dll”, unzip and copy to folder “C:\Windows\SysWOW64”; this dll will solve “Error loading shader libraries”
This is because Windows 8.1 64-bit does not have “d3dx9_32.dll” and “d3dx9_31.dll” by default.
Source: https://forums.civfanatics.com/threads/to-those-with-d3dx9_32-dll-problems.232577/page-3
Reasons:-
- Windows 8.1 64-bit by default is installed with DirectX 11 and it does not have all the dll files (d3dx9_xx.dll) of DirectX 9;
- DirectX 9 is required to run old games such as Civilization IV that support Windows Vista and below.