Compiling VLC 1.1.9 natively on Win32 using MSys

This forum is about all development around libVLC.
t-timmy
New Cone
New Cone
Posts: 7
Joined: 30 Nov 2008 01:11

Compiling VLC 1.1.9 natively on Win32 using MSys

Postby t-timmy » 26 Apr 2011 22:40

Hello.

I have not found a better suitable forum to post this question. I'm not sure LibVLC is about compiling VLC, but there was no other suitable forum under the development category.

I am using Windows 7 64-bit and following step-by-step from http://wiki.videolan.org/Win32CompileMSYSNew

As accurate as this guide is, my build fails.

Please help me compile, and I will make sure to update the Wiki.

First of all, step 7.2 failed. The configure command produced an error that shroedinger was not found. Googling a little bit, I added --disable-shroedinger to the script and then it worked. Should I have done that?

Then I executed the "PATH=/usr/win32/bin:$PATH make" which resulted in this output

Code: Select all

c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../libstrmiids.a(strmiids.o):strmiids.c:(.rdata+0x36c0): multiple definition of `MEDIASUBTYPE_MPEG2_TRANSPORT' .libs/libbda_plugin_la-bdagraph.o:bdagraph.cpp:(.rdata+0x1780): first defined here
I tried searching the forum but no one seems to have encountered this.
What am I doing wrong?

Thanks

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby Jean-Baptiste Kempf » 27 Apr 2011 00:08

Yes, you need an update contrib from http://people.videolan.org/~jb/Contribs/
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

t-timmy
New Cone
New Cone
Posts: 7
Joined: 30 Nov 2008 01:11

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby t-timmy » 27 Apr 2011 21:31

Thanks for the quick reply.
I did what you said, and it seemed to help.
Now, however, I get the following error when running make.

What can I do?

Code: Select all

Creating library file: .libs/libupnp_intel_plugin.dll.a .libs/libupnp_intel_plugin_la-upnp_intel.o: In function `Z24xml_getChildElementV alueP13_IXML_ElementPKc': C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:158: undefine d reference to `_imp__ixmlElement_getElementsByTagName' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:162: undefine d reference to `_imp__ixmlNodeList_item' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:163: undefine d reference to `_imp__ixmlNodeList_free' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:166: undefine d reference to `_imp__ixmlNode_getFirstChild' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:169: undefine d reference to `_imp__ixmlNode_getNodeValue' .libs/libupnp_intel_plugin_la-upnp_intel.o: In function `Z17parseBrowseResultP14 _IXML_Document': C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:175: undefine d reference to `_imp__ixmlRelaxParser' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:180: undefine d reference to `_imp__ixmlDocument_getElementsByTagName' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:184: undefine d reference to `_imp__ixmlNodeList_item' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:186: undefine d reference to `_imp__ixmlNodeList_free' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:190: undefine d reference to `_imp__ixmlNode_getFirstChild' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:193: undefine d reference to `_imp__ixmlNode_getNodeValue' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:196: undefine d reference to `_imp__ixmlParseBuffer' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:524: undefined reference to `_imp__UpnpSubscribe' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:533: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:567: undefined reference to `_imp__UpnpAddToAction ' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:571: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:617: undefined reference to `_imp__ixmlDocument_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:593: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:582: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:615: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:604: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:624: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:635: undefined reference to `_imp__UpnpSendAction' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:639: undefined reference to `_imp__UpnpGetErrorMes sage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:644: undefined reference to `_imp__ixmlDocument_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o: In function `Close': C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:141: undefine d reference to `_imp__UpnpFinish' .libs/libupnp_intel_plugin_la-upnp_intel.o: In function `Open': C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:97: undefined reference to `_imp__UpnpInit' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:108: undefine d reference to `_imp__UpnpRegisterClient' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:117: undefine d reference to `_imp__UpnpSearchAsync' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:126: undefine d reference to `_imp__UpnpSetMaxContentLength' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:129: undefine d reference to `_imp__UpnpGetErrorMessage' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:100: undefine d reference to `_imp__UpnpGetErrorMessage' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:695: undefined reference to `_imp__ixmlDocument_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:706: undefined reference to `_imp__ixmlDocument_ge tElementsByTagName' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:711: undefined reference to `_imp__ixmlNodeList_le ngth' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:714: undefined reference to `_imp__ixmlNodeList_it em' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:717: undefined reference to `_imp__ixmlElement_get Attribute' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:722: undefined reference to `_imp__ixmlElement_get Attribute' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:752: undefined reference to `_imp__ixmlNodeList_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:756: undefined reference to `_imp__ixmlDocument_ge tElementsByTagName' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:759: undefined reference to `_imp__ixmlNodeList_le ngth' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:762: undefined reference to `_imp__ixmlNodeList_it em' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:765: undefined reference to `_imp__ixmlElement_get Attribute' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:785: undefined reference to `_imp__ixmlNodeList_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:788: undefined reference to `_imp__ixmlDocument_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:309: undefined reference to `_imp__ixmlDocument_ge tElementsByTagName' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:325: undefined reference to `_imp__ixmlDocument_ge tElementsByTagName' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:329: undefined reference to `_imp__ixmlNodeList_le ngth' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:388: undefined reference to `_imp__ixmlNodeList_it em' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:332: undefined reference to `_imp__ixmlNodeList_it em' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:457: undefined reference to `_imp__ixmlNodeList_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:381: undefined reference to `_imp__ixmlElement_get ElementsByTagName' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:421: undefined reference to `_imp__UpnpResolveURL' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:442: undefined reference to `_imp__UpnpResolveURL' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:313: undefined reference to `_imp__ixmlNodeList_it em' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:315: undefined reference to `_imp__ixmlNode_getFir stChild' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:316: undefined reference to `_imp__ixmlNode_getNod eValue' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:319: undefined reference to `_imp__ixmlNodeList_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o:C:\msys\1.0\home\Jon\vlc\modules\serv ices_discovery/upnp_intel.cpp:454: undefined reference to `_imp__ixmlNodeList_fr ee' .libs/libupnp_intel_plugin_la-upnp_intel.o: In function `Callback': C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:221: undefine d reference to `_imp__UpnpDownloadXmlDoc' C:\msys\1.0\home\Jon\vlc\modules\services_discovery/upnp_intel.cpp:233: undefine d reference to `_imp__ixmlDocument_free' collect2: ld returned 1 exit status make[4]: *** [libupnp_intel_plugin.la] Error 1 make[4]: Leaving directory `/home/Jon/vlc/modules/services_discovery' make[3]: *** [all] Error 2 make[3]: Leaving directory `/home/Jon/vlc/modules/services_discovery' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/Jon/vlc/modules' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/Jon/vlc' make: *** [all] Error 2

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby Jean-Baptiste Kempf » 27 Apr 2011 22:28

--disable-upnp
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

t-timmy
New Cone
New Cone
Posts: 7
Joined: 30 Nov 2008 01:11

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby t-timmy » 28 Apr 2011 10:54

Worked. Wiki was updated.

sbpark2000
New Cone
New Cone
Posts: 1
Joined: 04 May 2011 01:32

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby sbpark2000 » 04 May 2011 02:05

I do not have a luck.
I installed latest contrib :
I have build errors at gme_plugin.
I am using gcc 4.5.2.

What did I miss ?
============================================================================================================
make[2]: Entering directory `/home/xxx/vlc/modules/demux'
CXXLD libgme_plugin.la
Creating library file: .libs/libgme_plugin.dll.a
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x505): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x51b): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x569): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x583): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x5a5): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x5bb): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x602): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x61c): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x642): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x65b): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x68c): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x786): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x9c5): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0x9db): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xa33): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xb89): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xbb2): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xbcb): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xbf1): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xc4b): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xccf): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xcf2): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xd0b): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xd2d): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xe3a): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(gme.cpp.obj):gme.cpp:(.text+0xedb): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x5a2): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x5bb): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x614): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x634): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x652): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x66b): undefined reference to `_Unwind_SjLj_Register'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x6bc): undefined reference to `_Unwind_SjLj_Unregister'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x6dc): undefined reference to `_Unwind_SjLj_Resume'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+0x6f2): undefined reference to `__gxx_personality_sj0'
C:/MinGW/msys/1.0/win32/lib/libgme.a(Multi_Buffer.cpp.obj):Multi_Buffer.cpp:(.text+make[2]: *** [libgme_plugin.la] Interrupt
make[1]: *** [all-recursive] Interrupt
make: *** [all] Interrupt
=================================================================================

zouyu
New Cone
New Cone
Posts: 1
Joined: 14 Jul 2011 12:15

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby zouyu » 14 Jul 2011 12:21

Worked. Wiki was updated.
hi,how do you fix this ?
i compiling vlc 1.1.10 and get the same bug

i have updated the contrib

bmesander
New Cone
New Cone
Posts: 9
Joined: 07 Sep 2011 21:45

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby bmesander » 13 Sep 2011 22:17

I have same problem with compiling win32/mingw with vlc-1.1.11. I am using contrib-20110823-win32-bin-gcc-4.4.4-runtime-3.17-only.tar.bz contrib file.

C:/msys/1.0/win32/lib/libgme.a(Vgm_Emu_Impl.cpp.obj):Vgm_Emu_Impl.cpp:(.text$_ZN
12Vgm_Emu_ImplD0Ev[Vgm_Emu_Impl::~Vgm_Emu_Impl()]+0x2b): undefined reference to
`_Unwind_SjLj_Register'
C:/msys/1.0/win32/lib/libgme.a(Vgm_Emu_Impl.cpp.obj):Vgm_Emu_Impl.cpp:(.text$_ZN
12Vgm_Emu_ImplD0Ev[Vgm_Emu_Impl::~Vgm_Emu_Impl()]+0xd8): undefined reference to
`_Unwind_SjLj_Unregister'
C:/msys/1.0/win32/lib/libgme.a(Vgm_Emu_Impl.cpp.obj):Vgm_Emu_Impl.cpp:(.text$_ZN
12Vgm_Emu_ImplD0Ev[Vgm_Emu_Impl::~Vgm_Emu_Impl()]+0x17e): undefined reference to
`_Unwind_SjLj_Resume

bmesander
New Cone
New Cone
Posts: 9
Joined: 07 Sep 2011 21:45

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby bmesander » 13 Sep 2011 23:20

This thread seems to offer some more clues:

viewtopic.php?f=14&t=93181

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby Jean-Baptiste Kempf » 14 Sep 2011 00:38

sjlj issues are quite documented.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

bmesander
New Cone
New Cone
Posts: 9
Joined: 07 Sep 2011 21:45

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby bmesander » 14 Sep 2011 16:23

I had to recompile lib555 and openssl with my compiler instead of using the ones in the contrib/msys universe I had installed; once I did that, I was able to link without sjlj issues.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby Jean-Baptiste Kempf » 14 Sep 2011 16:27

While the simple solution is to use the right gcc-tdm compiler as documented on the wiki...
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

bmesander
New Cone
New Cone
Posts: 9
Joined: 07 Sep 2011 21:45

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby bmesander » 14 Sep 2011 17:45

Hi Jean-Baptiste,

I am using gcc-tdm, per the wiki. The issue it seems is that that I am (intentionally) carrying local modifications to some of the contrib libraries in order to support SRTP. Thus my configuration options are somewhat different than the tested configuration options on the wiki.

Thanks, Ben

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby Jean-Baptiste Kempf » 14 Sep 2011 23:51

There are 2 different versions of gcc, one with dw2, one with sjlj. You must take the right one, else, you have the sjlj issues.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

bmesander
New Cone
New Cone
Posts: 9
Joined: 07 Sep 2011 21:45

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby bmesander » 15 Sep 2011 02:28

Hi Jean-Baptiste,

I downloaded gcc-tdm originally (several weeks ago) with the link from the wiki. This installed the dwarf2 version (or it was overwritten later with the dwarf2 version; see below). Today I visited the gcc-tdm website and explicitly downloaded the sjlj version and installed it, which worked.

I had to recompile my openssl and lib555 libraries separately because we have added SRTP support to VLC & lib555 and thus are not using the precompiled contribs for those, and they were compiled with the dwarf2 version which I installed from the wiki link.

I don't know whether the mingw compile wiki has changed or the file on the gcc-tdm website to cause this issue, or perhaps the order of things in the wiki is incorrect (do the msys developer tools which are installed after gcc-tdm in the directions overwrite the gcc-tdm compiler?), but I assure you at one point at least, you could follow the directions exactly on a clean window 7 machine with nothing installed and end up with contribs being compiled with the sjlj exception handling ABI and the VLC with dwarf 2. I did not note this problem with VLC 1.0.2 and the contribs linked from the wiki, but I did note the problem with vlc 1.1.11 and the latest contribs (not linked from wiki).

I note one other problem with the wiki, if you follow the directions exactly, you end up with a non-GNU m4 ahead of GNU m4 in your path. This results with an error during the bootstrap phase indicating that m4 does not accept the --gnu option. I don't fully understand the interactions between the windows path, msys/mingw path, etc. so I just moved the non-GNU m4 out of the way and replaced it with another copy of GNU m4, and the build process was happy.

Hope this helps... Ben

bmesander
New Cone
New Cone
Posts: 9
Joined: 07 Sep 2011 21:45

Re: Compiling VLC 1.1.9 natively on Win32 using MSys

Postby bmesander » 15 Sep 2011 02:30

Finally, I note in the vlc documentation for installing gcc-tdm, the exception handling is referred to as siji exception handling rather than sjlj, so I missed this while searching for it.


Return to “Development around libVLC”

Who is online

Users browsing this forum: No registered users and 10 guests