<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 26/06/2012 17:33, Chris Smowton
wrote:<br>
</div>
<blockquote cite="mid:4FE9E465.6000706@cam.ac.uk" type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<div class="moz-cite-prefix">On 26/06/2012 08:44, Rafaël Carré
wrote:<br>
</div>
<blockquote cite="mid:4FE96871.1090100@gmail.com" type="cite">Try
to build gcc with --disable-shared<br>
</blockquote>
So I hacked around the previous problem by manually running
libtool with -static, which worked. However I found that the
package produced at the end of the day had a lot of broken
modules, mostly because they included dependencies on
libstdc++-6.dll and some libgcc DLLs.<br>
<br>
I'll try a rebuilding mingw64 with --disable-shared as you
suggest. Since it appears to be the default for mingw64 trunk to
use a shared runtime where possible, and the VLC packaging
mechanism seems to make no attempt to distribute the MinGW C/C++
runtime, should the page <a moz-do-not-send="true"
href="http://wiki.videolan.org/Win32Compile">http://wiki.videolan.org/Win32Compile</a>
mention that restriction?<br>
</blockquote>
I can confirm the GCC build option fixed matters. It seems that
switch is sparsely documented, least of all by the GCC team
themselves, but it appears to do what I'd hope, i.e. statically link
the CRT (and libstdc++) into built programs whilst continuing to
permit them to depend dynamically on libvlc.dll, Windows core DLLs
and so on.<br>
<br>
One problem remains: after that rebuild, almost all modules work
except for:<br>
<br>
[0055b428] main libvlc warning: cannot load module `c:\Program Files
(x86)\VideoLan\VLC-git\plugins\gui\libqt4_plugin.dll' (Invalid
access to memory location. (error 998))<br>
[0055b428] main libvlc warning: cannot load module `c:\Program Files
(x86)\VideoLan\VLC-git\plugins\meta_engine\libtaglib_plugin.dll'
(Invalid access to memory location. (error 998))<br>
[0055b428] main libvlc warning: cannot load module `c:\Program Files
(x86)\VideoLan\VLC-git\plugins\visualization\libprojectm_plugin.dll'
(Invalid access to memory location. (error 998))<br>
<br>
Dependency Walker doesn't suggest those plugins have anything
particularly wrong with them. Fortunately I don't care about the QT
GUI, but do you have any idea why this might happen? Debugging the
error is tricky when my build machine and target machine are so far
removed!<br>
</body>
</html>