VLC Win32 MSYS compile checklist

This forum is about all development around libVLC.
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: VLC Win32 MSYS compile checklist

Postby Jean-Baptiste Kempf » 12 Jun 2010 17:21

Please, don't wait, update the wiki now :D
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.

Vicne
Blank Cone
Blank Cone
Posts: 40
Joined: 28 Feb 2010 22:11

Re: VLC Win32 MSYS compile checklist

Postby Vicne » 12 Jun 2010 18:19

Wow, don't know what happened with the forums then the wiki this afternoon, but I could only read your messages now, and I just finished writing the procedure on the wiki... in a separate page :-( : http://wiki.videolan.org/Win32CompileMSYSNewNew

@J-B, In my view, it's not a fork but more an "update", except that your original can be kept as a reference to copy back the MingW steps if needed in the future...

I admit I hesitate between :
- streamlining the process as much as possible (leaving out alternatives and steps that are not absolutely needed to build, hence the 2 "TODO" notes)
- being as complete and futureproof as possible, which would mean adding back the MingW and wget step, as well as the suggested sed update...

For now, I italicized a few alternatives and mentioned them as "Note for the brave", so that might be a way to add more "alternate or extra" steps...

@MichaelMC, even with the libraries, typing hostname -f says it's an invalid option, that's why I left this option as a "Note for the brave" alternative and have left the file changes as the "main procedure".

Also, I think the proposed portableGit procedure would have its place on the Git wiki page as it looks much simpler than the Git/TortoiseGit steps. I think it is really valuable and I would have probably gone the Git way if I had known about it from the start...

Now I think I'll have to concentrate more on code changes and less on build procedure, so I leave it to the community to decide the future of that page :-)


Oh, and thanks again very much for your help.


Vicne

PS : I have the impression there is a lack for a "VLC development" forum. Do these questions belong here ? Even this thread is not "libVLC" specific unless libVLC and VLC are basically the same thing...

gnosygnu
Blank Cone
Blank Cone
Posts: 45
Joined: 06 Jun 2010 16:06

Re: VLC Win32 MSYS compile checklist

Postby gnosygnu » 12 Jun 2010 19:38

PS : I have the impression there is a lack for a "VLC development" forum. Do these questions belong here ? Even this thread is not "libVLC" specific unless libVLC and VLC are basically the same thing...
Just to chime in: I think a "VLC development" forum would be useful.
If this is too much work/maintenance, is it fine to post general VLC dev issues here? (I don't want to abuse the libVLC space)....

BTW: Thanks for putting up the wiki page, Vicne. It was one of the items on my todo.

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: VLC Win32 MSYS compile checklist

Postby Jean-Baptiste Kempf » 12 Jun 2010 22:05

Wow, don't know what happened with the forums then the wiki this afternoon, but I could only read your messages now, and I just finished writing the procedure on the wiki... in a separate page :-( : http://wiki.videolan.org/Win32CompileMSYSNewNew

@J-B, In my view, it's not a fork but more an "update", except that your original can be kept as a reference to copy back the MingW steps if needed in the future...

I admit I hesitate between :
- streamlining the process as much as possible (leaving out alternatives and steps that are not absolutely needed to build, hence the 2 "TODO" notes)
- being as complete and futureproof as possible, which would mean adding back the MingW and wget step, as well as the suggested sed update...

For now, I italicized a few alternatives and mentioned them as "Note for the brave", so that might be a way to add more "alternate or extra" steps...

@MichaelMC, even with the libraries, typing hostname -f says it's an invalid option, that's why I left this option as a "Note for the brave" alternative and have left the file changes as the "main procedure".

Also, I think the proposed portableGit procedure would have its place on the Git wiki page as it looks much simpler than the Git/TortoiseGit steps. I think it is really valuable and I would have probably gone the Git way if I had known about it from the start...

Now I think I'll have to concentrate more on code changes and less on build procedure, so I leave it to the community to decide the future of that page :-)


Oh, and thanks again very much for your help.


Vicne

PS : I have the impression there is a lack for a "VLC development" forum. Do these questions belong here ? Even this thread is not "libVLC" specific unless libVLC and VLC are basically the same thing...
Just delete the old page content and put the new content in it.
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.

Vicne
Blank Cone
Blank Cone
Posts: 40
Joined: 28 Feb 2010 22:11

Re: VLC Win32 MSYS compile checklist

Postby Vicne » 13 Jun 2010 10:30

Just delete the old page content and put the new content in it.
Done. My changes are now at http://wiki.videolan.org/Win32CompileMSYSNew

I backported the "vanilla MinGW + GCC 4 update" section as a "Note for the brave" (these notes are now indented to separate them more from the main text flow).

I also changed the link to whoami and hostname to use the statically linked versions, but this has absolutely not been tested (Note for the brave also).

Finally, I also copied the Troubleshooting section instead of a link to the (now unreachable) original page.

Hope this suits everybody.

Best regards,

Vicne

PS : No idea how to delete the "NewNew" page I created... :-/

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 13 Jun 2010 11:52

Hi all,

Firstly, thanks for the thread... very timely for my attempt to build VLC..

One of the issues with the whole compile thing is that by the time the wiki is written, downloads are out of date already.

Would it be possible that once a successful procedure has been found, that we duplicate the required downloads within the VideoLan servers, so that that procedure can be replicated. We could even combine some into a single download...

For example, the link
"Use the installer found at http://sourceforge.net/projects/tdm-gcc ... e/download"
is already unavailable and superceded by 4.5.0

I know duplication of the downloads is not good, but it would mean that man hours of effort would be saved. If I'm on my 4th complete restart in a new XP VM, and others on their 7th, there must be an easier way, and all that time could have been spent developing VLC rather than fighting with unfamiliar environments.


I'll be trying a from scratch today with 4.5.0, and I'll post here how I get on. I'll use the 1.1.0 sources, because I've seen a couple of problems in the the GIT sources in areas of the project that I have no knowledge of...

Please can someone make TDM 4.4.1 available somewhere in case 4.5.0 is no go?
(or indeed, if you are like me, you have a folder full of VLC related downloads.. if someone has everything referenced in the wiki and enough hosting space... need I say more....)

onwards to the next complete start over...

Simon

Vicne
Blank Cone
Blank Cone
Posts: 40
Joined: 28 Feb 2010 22:11

Re: VLC Win32 MSYS compile checklist

Postby Vicne » 13 Jun 2010 12:08

Hi all,

Firstly, thanks for the thread... very timely for my attempt to build VLC..

One of the issues with the whole compile thing is that by the time the wiki is written, downloads are out of date already.
I couldn't agree more.

Build depends on so many packages that finding the right combination is a real nightmare, not counting the "moving target" problem.

My concern is not only to be able to build vlc.exe, but also to have a *working* one. As you can read above, the first build I personally succeeded in creating was broken regarding marquee. I have no idea about the "quality" of the one I build just now...
Would it be possible that once a successful procedure has been found, that we duplicate the required downloads within the VideoLan servers, so that that procedure can be replicated. We could even combine some into a single download...
That would be my dream indeed. Replace the 20Mb "contribs" by a 200Mb "environment", a file you'd just have to unzip, start a command prompt, and go immediately to the sources/bootstrap/configure/build steps
"Use the installer found at http://sourceforge.net/projects/tdm-gcc ... e/download"
is already unavailable and superceded by 4.5.0
Damned :-(
I'll be trying a from scratch today with 4.5.0, and I'll post here how I get on. I'll use the 1.1.0 sources, because I've seen a couple of problems in the the GIT sources in areas of the project that I have no knowledge of...
Yes, my goal is also to start hacking from a "known good" build, before getting closer to the HEAD...
Please can someone make TDM 4.4.1 available somewhere in case 4.5.0 is no go?
I would advise that you first start with 4.5.0 indeed, and if successful, update the wiki. If not, here's the file, on megaupload for now : http://www.megaupload.com/?d=CWDBS8W0

Could you, *before you start the "bootstrap" step*, rar your MinGW and Msys files in a single bundle, and if build is successful, could you upload the rar somewhere and link to it ?

Good Luck !

Vicne

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 13 Jun 2010 12:24

will do. preparing my VM first; one thing of note is my VM username was 'Fred Bloggs', and VLC won't build if the username has a space if the VLC tree is in the user's msys folder.

Should have results late tonight.

s

MichaelMc
Blank Cone
Blank Cone
Posts: 63
Joined: 10 Jun 2009 17:55

Re: VLC Win32 MSYS compile checklist

Postby MichaelMc » 13 Jun 2010 12:46

Would it be possible that once a successful procedure has been found, that we duplicate the required downloads within the VideoLan servers, so that that procedure can be replicated. We could even combine some into a single download...

For example, the link
"Use the installer found at http://sourceforge.net/projects/tdm-gcc ... e/download"
is already unavailable and superseded by 4.5.0
Simon
TDM 4.4.1 may be superseded by TDM 4.5.0 but it is still available: http://sourceforge.net/projects/tdm-gcc ... e/download

TDM's GCC 4.5.0 at first seems to result in a successful VLC build, but the resulting executable fails to start up, which I suspect is because we're using contribs for GCC 4.4.

Vicne
Blank Cone
Blank Cone
Posts: 40
Joined: 28 Feb 2010 22:11

Re: VLC Win32 MSYS compile checklist

Postby Vicne » 13 Jun 2010 13:00

TDM 4.4.1 may be superseded by TDM 4.5.0 but it is still available: http://sourceforge.net/projects/tdm-gcc ... e/download
Thanks.
Wiki link updated, forget about megaupload :-)

Vicne

Vicne
Blank Cone
Blank Cone
Posts: 40
Joined: 28 Feb 2010 22:11

Re: VLC Win32 MSYS compile checklist

Postby Vicne » 13 Jun 2010 13:01

will do. preparing my VM first; one thing of note is my VM username was 'Fred Bloggs', and VLC won't build if the username has a space if the VLC tree is in the user's msys folder.
Well, there's a warning regarding this on the Wiki. You should create another Windows account such as Fred_Bloggs ...

Vicne

Vicne
Blank Cone
Blank Cone
Posts: 40
Joined: 28 Feb 2010 22:11

New problem with rc3

Postby Vicne » 13 Jun 2010 17:59

I tried building rc3, keeping the same build environment, but the build fails with the following error

Code: Select all

make[5]: Entering directory `/home/Vincent/vlc-1.1.0-rc3/modules/gui/qt4' MOC main_interface.moc.cpp /bin/sh: moc: command not found
So the wiki page is again not valid...

Edit : I guess we should go back to

Code: Select all

PATH=/usr/win32/bin:$PATH make
instead of

Code: Select all

make
Vicne

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 13 Jun 2010 18:12

:) I put it in the previous wiki... a couple of days ago.

Building is done; package made; vlc is running!!!! (with a gui, and everything!)
So, confirmed by another party, the procedure works for building the 1.1.0rc,
and again, a big thankyou for this thread.

I did screw up in the procedure (missed the whole step with libcrypt), so I'll revisit the two backup zips i made and fix them. I want to test a zip of the complete environment on another new VM before i upload it somewhere, but then we'll need somewhere to put them.

A zip of msys/mingw ready for contribs and vlc sources is ~ 70 mbytes.
A zip of msys/mingw with contribs and vlc sources before compile is ~ 127 mbytes.

Again I understand that the build environment by it's nature is a moving target, but this would give us a known starting point to work from.

Once I've delved into the bit I want to look at, and applied and fixes jb thinks appropriate, I may return to the git version to see if that builds in this environment, and if not, what needs to be updated. But for the moment i have work to do on the bits I do understand, and 1.1.0 will be a fine base for that.

Simon

Vicne
Blank Cone
Blank Cone
Posts: 40
Joined: 28 Feb 2010 22:11

Re: VLC Win32 MSYS compile checklist

Postby Vicne » 13 Jun 2010 18:24

Again I understand that the build environment by it's nature is a moving target, but this would give us a known starting point to work from.
Maybe you saw that J-B updated the wiki already to migrate to 1.1.0rc3, which fixes a few source issues. My build just finished OK with rc3 so it's OK.

Vicne

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 14 Jun 2010 00:29

ok, built with 1.1.0rc3
have a single zip which contains everything pre-build (130mbytes), which just needs configure-msys and make.
It works without installation, just unzip and go.
not even username matters...
I just tested on my main windows7 environment, and build was ok...
just uploading now, will post a link for testing tomorrow.
s

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: VLC Win32 MSYS compile checklist

Postby Jean-Baptiste Kempf » 14 Jun 2010 00:52

I have to say, nice job, guys!

I have cleaned up also some of the wiki surrounding pages...

I would prefer to advise people to use git and not tarballs, but it doesn't really matter.
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.

MichaelMc
Blank Cone
Blank Cone
Posts: 63
Joined: 10 Jun 2009 17:55

Re: VLC Win32 MSYS compile checklist

Postby MichaelMc » 14 Jun 2010 00:56

ok, built with 1.1.0rc3
have a single zip which contains everything pre-build (130mbytes), which just needs configure-msys and make.
It works without installation, just unzip and go.
not even username matters...
I just tested on my main windows7 environment, and build was ok...
just uploading now, will post a link for testing tomorrow.
s
Have you tried installing on to another computer on a non C: partition? And I still don't believe it wise to include the contribs.

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 14 Jun 2010 01:08

no, only on C:
needs >700mbytes free to build.
Agreed, this is not ideal, but it's more of a 'quick start'. We can't lose the mechanism to create this as it'll change every version.
I'll post a compiler tools only zip as well, to add vlc sources to, but it's still C based.

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 14 Jun 2010 01:11

image is up (this is mingw+msys+contribs+vlcsource ready to build):
http://www.megaupload.com/?d=GSDCNEEQ
we've got 21 days to host it elsewhere.
look at the text doc in the root of the zip for (brief) instructions.
jb - i'll give the git another go once i've had a few good nights sleep ;)

I'll start the upload of the mingw/msys only zip now & post link tomorrow.

second image is up:
http://www.megaupload.com/?d=FFYD2T4B
This is the mingw/msys with all patches, but with no VLC source or contribs.
It also contains a small vlc patches zip - which are the updates for 1.1.0rc (not rc3).

s

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 14 Jun 2010 14:52

Is anyone else getting a 'Microsoft Visual C++ Runtime Library' dialogue box saying:

Assertion failed!
File: misc/variables.c
Line: 965
Expression: 0

First time I ran vlc, this did not happen, but today it happens every time on opening a file.

(in variables.c, there is a #ifndef NDEBUG around the assert statement, so I guess this would not happen in release. But I can't seem to get a log of the fprintf above the assert, not in messages, and not in extraintf=logger).
OS is Windows 7; I've not returned to my XP VM - that's next.

SOLVED: Problem is related to multi-monitor and Direct3d output mode. Avoided by not having multi-head display, or select any other output format.

s

MichaelMc
Blank Cone
Blank Cone
Posts: 63
Joined: 10 Jun 2009 17:55

Re: VLC Win32 MSYS compile checklist

Postby MichaelMc » 14 Jun 2010 17:14

Have you considered using 7Zip instead of zip? That first file compresses to around 74mb from 128.

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 14 Jun 2010 18:00

I did, just I did not think about the format... created a 'compressed folder' then used 7zip to populate. LZMA would save me a lot of upload time!!!
Did anyone try it yet?

What I'd like next is instructions on how to use GDB with the compiled vlc... tried this in the past and got no-where.
s

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 14 Jun 2010 20:54

git from last night (14th june, early hours) builds and runs using the compiler configuration and contribs in the zip. just install git and tortoisegit as described, create a new folder (e.g. c:/msys/1.0/home/vgit), right click in the folder and choose 'git clone', type git://git.videolan.org/vlc.git, hit go and wait a while. no other modifications are required, just the bootstrap, configure-sys and make and make package from the guide. (I don't think i even copied the m4 files?).

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: VLC Win32 MSYS compile checklist

Postby Jean-Baptiste Kempf » 14 Jun 2010 21:31

I did, just I did not think about the format... created a 'compressed folder' then used 7zip to populate. LZMA would save me a lot of upload time!!!
Did anyone try it yet?

What I'd like next is instructions on how to use GDB with the compiled vlc... tried this in the past and got no-where.
s
Run gdb inside MSys and NOT outside. It will work.
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.

btsimonh
Blank Cone
Blank Cone
Posts: 17
Joined: 11 Jun 2010 22:03

Re: VLC Win32 MSYS compile checklist

Postby btsimonh » 14 Jun 2010 23:15

:) maybe the bit I missed was 'make package-win32-base-debug'
then run gdb, and it find symbols. Now I have to work out how GDB works..
(P.S. GDB is already in the compiler/environment... but insight is not. Looking for one now, but may have to build it.)


Return to “Development around libVLC”

Who is online

Users browsing this forum: No registered users and 22 guests