If VLS can compile in cygwin?

Discussion on the (deprecated) VideoLAN Server application as well as the miniSAPserver stream announcer. This is not about VLC!
Forum rules
Please do not post VLC related questions in this forum category. See the Forum Rules for more information.
xzheng
Blank Cone
Blank Cone
Posts: 16
Joined: 19 Jul 2004 07:48

If VLS can compile in cygwin?

Postby xzheng » 24 Jul 2004 20:26

Hi,How are you doing!

Here there are some problems for compiling.
I don't compile the VLS with VC++ .NET 2003. And I don't yet compile the VLS in cygwin on w2k. Would you tell me if VLS can compile in cygwin? Thank you very much.

the follow error for cygwin:

$ make
Generating dependancies for src/core/application.cpp...
g++: E:Program: No such file or directory
g++: FilesMicrosoft: No such file or directory
g++: Visual: No such file or directory
g++: Studio: No such file or directory
g++: .NET: No such file or directory
g++: 2003SDKv1.1include src/core/application.cpp: No such file or directory
g++: no input files
Compiling src/core/application.cpp...
g++ -Wall -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DCONFIG_PATH='"/usr/local/etc/vi
deolan/vls"' -DBUGGY_VLC -DYY_NO_UNPUT -DSYSLOG E:\Program Files\Microsoft Visua
l Studio .NET 2003\SDK\v1.1\include\ -o obj/core/application.o -c src/core/appli
cation.cpp
g++: E:\Program: No such file or directory
g++: Files\Microsoft: No such file or directory
g++: Visual: No such file or directory
g++: Studio: No such file or directory
g++: .NET: No such file or directory
g++: 2003\SDK\v1.1\include -o: No such file or directory
g++: obj/core/application.o: No such file or directory
make: *** [obj/core/application.o] Error 1

Best regards

tirath
New Cone
New Cone
Posts: 2
Joined: 19 Aug 2004 13:19
Location: Kuala Lumpur
Contact:

Postby tirath » 19 Aug 2004 13:43

howdy,

I found the following document on the 'net, but I forgot where... I have no idea if this works, but it purports to be a guide to get a "Working Cygwin VLC Compile Environment". The file includes a list of packages included with the cygwin distribution, which I have ommitted for brevity.

When I got hold of the document I was hoping to build VLC in cygwin, but I subsequently altered my goals. Anyway, hope this works, someone let us know if it does...
Working Cygwin VLC Compile Environment (WinXP/Win2K):

This document’s purpose is to provide a working Cygwin environment under Windows (Win2K/WinXP).

*** Initial Setup ***
-- Install Cygwin.
http://www.cygwin.com/setup.exe

When you run the Cygwin setup program there are options on components to install. For compiler items, make sure that you select all of the things starting "mingw", plus the "make" item. Do NOT select any C compilers other than the mingw ones. (when you select one of the mingw components, the Cygwin Setup app will automatically add one non-mingw C item -- that's OK, let it, just don't select any of them yourself).

Make sure that you select the two "gettext" items. Make sure to select "libiconv"

The Appendix shows the Cygwin installation that I use. It absolutely contains extra (not needed for VLC compilation) files, but does work.

Launch Cygwin. It will create a home directory for you. In my case it was c:\cygwin\home\mfm

Download:
http://download.videolan.org/pub/testin ... ly.tar.bz2
into your cygwin home directory.

In your Cygwin shell, enter:
tar xjvf contrib-20040413-win32-bin-gcc3.3.1-only.tar.bz2 -C /

NOTE: For maintenance purposes, periodically check the file install.win32, to see if a new “contrib” package (date newer than 20040413) is called out. If it is, download the newer file and install it.

Install the subversion tool, from:
http://subversion.tigris.org/servlets/P ... olderID=91

Still in your Cygwin home directory, create a little batch file, get_svn.bat. It only needs one line:
c:\program files\subversion\bin\svn" co svn://svn.videolan.org/vlc/trunk vlc-trunk

Put the above little batch file in your Cygwin home directory.

Create one other little file, in whatever text editor you like, containing:

./bootstrap && \
CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \
LDFLAGS=-L/usr/win32/lib \
CC="gcc -mno-cygwin" CXX="g++ -mno-cygwin" \
./configure \
--disable-sdl --disable-gtk \
--enable-nls \
--enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \
--enable-faad \
--enable-flac \
--enable-theora \
--with-wx-config-path=/usr/win32/bin \
--with-freetype-config-path=/usr/win32/bin \
--with-fribidi-config-path=/usr/win32/bin \
--enable-livedotcom --with-livedotcom-tree=/usr/win32/live.com \
--enable-caca --with-caca-config-path=/usr/win32/bin \
--with-xml2-config-path=/usr/win32/bin \
--with-dvdnav-config-path=/usr/win32/bin \
--disable-cddax --disable-vcdx \
--enable-release
Make

{Instead of the line “--enable-release”, “--enable-debug” will generate additional debugger information.}

Save the above little file -- I called mine "config_setup", in your home directory.

The above gets to a basic compiling environment.

*** Day-to-Day Builds ***
run get_svn.bat (double click on it from a normal Windows Explorer window) -- this will do a pull of the current subversion trunk into your home directory, into the directory vlc-trunk.

For instance, in my environment, my home directory is c:\cygwin\home\mfm. I have get_svn.bat located there. When I run get_svn.bat there is now a directory c:\cygwin\home\mfm\vlc-trunk.

(vlc-trunk will get over-written the next time you run the batch file. If you want to save a snapshot of the existing vlc-trunk, rename the "vlc-trunk" directory to something else.)

In your Cygwin bash shell: cd vlc-trunk

In your shell, run: ../config_setup

to have the little script run. (You don't have to run it as a script, it's just easier than cutting and pasting all the lines)

Go out and take a walk, play with your dog, whatever -- the above script does take time, even on a fast PC. Just let it run until it returns you to a bash shell prompt.

If you're really bored, choose to sit and watch the compilation, expect to see warnings at various times. Unless you see an ERROR, and things stop, don't worry.

NOTE: If during the "make", it generates an error and stops when it is compiling the "po" directory, it is a gettext problem. Run the Cygwin Setup app to deinstall your libiconv and gettext (both of the gettext options), then select to do a reinstall from the Internet of those items, FROM A DIFFERENT MIRROR. I spent over a week with this problem, it turned out the Cygwin mirror I first used had "bad" files.

You should now have a working vlc.exe file. From an Explorer window in Windows, you should see vlc.exe in the vlc-trunk directory.

Copying the necessary executable files:
You now have a compiled, working vlc.

To save off just the necessary executable and library files, into a unique directory:
At a Cygwin shell, in the vlc-trunk directory, type:
make package-win32-base
will create a subdirectory named vlc-x.x.x with all the binaries
'stripped' (ie. without any debugging symbols).

or

make package-win32-zip
Same as above but will package the directory in a zip file.

tirath
New Cone
New Cone
Posts: 2
Joined: 19 Aug 2004 13:19
Location: Kuala Lumpur
Contact:

Postby tirath » 19 Aug 2004 13:45

I should also mention, the author for that document is not known to me, other than the initials MFM contained in the word document meta information.

markfm
Big Cone-huna
Big Cone-huna
Posts: 1535
Joined: 22 Feb 2004 17:42

Postby markfm » 19 Aug 2004 16:23

Hmm, I wonder who it is?
MarkFM :)

Best I can tell, the doc is still correct. There is a newer contrib file for VLC, contrib-20040520. The Appendix is very important. I do NOT install all Cygwin Developer packages. If you install additional C/C++ components you are likely to get compiler errors of the form "need to use --build --host --target". I'm sure there's a way to handle the error, a simple one-line addition to the bootstrap, but since I don't cross-compile I never bothered to learn it.


Return to “VideoLAN Server and miniSAPserver”

Who is online

Users browsing this forum: No registered users and 4 guests