title: Cant Run Application Created With QT5 And VS2013 In Windows XP
body: <p>I have application created with <code>QT5</code> and <code>Visual Studio 2013</code>. I also use <code>QT WebEngine</code> in my application.</p>
  
  <p>My application works fine in windows 7 (32 bit) . For some reason i need to run it in windows xp sp3 (32 bit).</p>
  
  <p>When i run it, I get the following error:</p>
  
  <pre><code>The procedure entry point strnlen could not be located in the dynamic link library msvcrt.dll
  </code></pre>
  
  <p>I press <code>OK</code> several time and it goes away and my <code>QMainWindow</code> will pop out, But its totally BLACK and i see the following errors in debugger.</p>
  
  <pre><code>class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags&lt;enum QWindowsOpenGLTester::Renderer&gt;): Could not initialize EGL display: error 0x3001
  class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags&lt;enum QWindowsOpenGLTester::Renderer&gt;): When using ANGLE, check if d3dcompiler_4x.dll is available
  </code></pre>
  
  <p>The <code>d3dcompiler_47.dll</code> is in application directory too.</p>
  
  <p>Whats wrong here? </p>
  
  <p><strong>UPDATE 1</strong></p>
  
  <p>I placed 3dcompiler_46.dll in executable's directory and this is what happened.</p>
  
  <p>I still get <code>The procedure entry point strnlen could not be located in the dynamic link library msvcrt.dll</code> error but after i press <code>Ok</code>, I get the following error as well.</p>
  
  <pre><code>The procedure entry point _except_handler4_common could not be located in the dynamic link library msvcrt.dll
  </code></pre>
  
  <p>The <code>QMainWindow</code> is still <code>BLACK</code> and the errors about <code>ANGLE</code> is the same.</p>
  
  <p><strong>UPDATE 2</strong></p>
  
  <p>I build <code>QT</code> for <code>Windows XP</code> with following configuration</p>
  
  <pre><code>configure -release -opensource -opengl desktop -target xp -platform win32-msvc2013 -angle -icu -nomake examples -prefix C:\QT-Compile
  </code></pre>
  
  <p>I replaced <code>QT</code> dependency and ran my application, I got the following errors:</p>
  
  <pre><code>The application has failed to start because icuin56.dll was not found
  The application has failed to start because icuuc56.dll was not found
  </code></pre>
  
  <p>I tried to find them in <code>QT</code> directory (C:\QT-Compile) and i couldn't but i had them on main machine that run in <code>Windows Seven</code>, I placed them next to executable and application run successfully and previous errors are gone, However, The <code>QMainWindow</code> is still <code>BLACK</code> and i have the following errors in my debugger in run time.</p>
  
  <pre><code>QOpenGLShaderProgram: could not create shader program
  QOpenGLShader: could not create shader
  bool __thiscall QOpenGLTextureBlitter::create(void) Could not link shader program:
  </code></pre>
  
  <p>Whats wrong now ?</p>
  
  <p><strong>UPDATE 3</strong></p>
  
  <p>This is how i configured <code>QT</code>.</p>
  
  <pre><code>configure -release -opensource -opengl dynamic -target xp -platform win32-msvc2013 -icu -nomake examples -prefix C:\QT-Compile
  </code></pre>
  
  <p>I used <code>windeployqt.exe</code> and placed required DLLs and ... next to executable.</p>
  
  <p>Ran application in windows xp and i keep getting following errors then application crash.</p>
  
  <p>Message Box :</p>
  
  <pre><code>The procedure entry point strnlen could not be located in the dynamic link library msvcrt.dll
  </code></pre>
  
  <p>QT Debugger :</p>
  
  <pre><code>class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags&lt;enum QWindowsOpenGLTester::Renderer&gt;): Could not initialize EGL display: error 0x3001
  
  class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(class QFlags&lt;enum QWindowsOpenGLTester::Renderer&gt;): When using ANGLE, check if d3dcompiler_4x.dll is available
  Failed to load opengl32sw.dll (The specified module could not be found.)
  class QOpenGLStaticContext *__cdecl QOpenGLStaticContext::create(bool): Failed to load and resolve WGL/OpenGL functions
  </code></pre>