Building VLMC: Difference between revisions

From VideoLAN Wiki
Jump to navigation Jump to search
Copy-edit, markup, links
 
(26 intermediate revisions by 10 users not shown)
Line 1: Line 1:
=Building VLMC from source=
[[File:VLMC icon.png|alt=|thumb|right]]
== Building VLMC from source ==


This wiki page has information on building VideoLAN Movie Creator, VLMC from source.
This wiki page has information on building [[VideoLAN Movie Creator]] (VLMC) from source.
VLMC (VideoLAN Movie Creator) is a free video editing software,
offering features to realize semi-professional quality movies,
but with the aim to stays simple and user-friendly.


==Resources==
VLMC is a free video editing software, offering features to realize semi-professional quality movies, but with the aim to stay simple and user-friendly.


VLMC requires Qt(4.5+), C++ compiler and libVLC.
=== Resources ===


To install Qt, refer: http://www.qtsoftware.com/downloads
VLMC requires a c++ compiler (g++), cmake, Qt(4.6+), libVLC and frei0r plugins.


To install libVLC, you are required to compile VLC
* To install [[Qt]], refer to: https://www.qt.io
* To install [[libVLC]], you are required to [[compile VLC]]
* To get the current source of {{VLC}}, refer to: [[GetTheSource]]
* For information on using Git, refer to: [[Git]]
* If you are interested in mailing lists, go to https://mailman.videolan.org/listinfo/. We have two VLMC mailing lists:
** [https://mailman.videolan.org/pipermail/vlmc-announce/ vlmc-announce]: Official announcements (release, events, ...)
** [https://mailman.videolan.org/pipermail/vlmc-devel/ vlmc-devel]: Developers discussions


To get the current source of VLC player, refer: http://wiki.videolan.org/GetTheSource
=== Getting the code ===


For information on using Git, refer: http://wiki.videolan.org/Git
You can fetch the current VLMC working tree using Git:
{{$}} git clone https://code.videolan.org/videolan/vlmc.git


For Information on generic compilation of VLC, refer: http://wiki.videolan.org/Compile_VLC
Do the same for VLC (as described in [[GetTheSource]]):
{{$}} git clone git://git.videolan.org/vlc.git


In case you are interested in mailing list, goto:
=== Building VLMC on Linux ===
  http://vlmc.org/mailman/listinfo


We have two VLMC mailing lists:
Following is the cleanest way of compiling VLMC (commands for *nix OS)
  * vlmc-announce: Official announcements (release, events, ...)
  * vlmc-devel: Developers discussions


==Getting the source==
1. Compile and install [[libVLC]], libVLC is required by VLMC (you can also install VLC using your Linux distribution), for example:
{{$}} cd path_to_vlc_src
{{$}} ./bootstrap
{{$}} ./configure ''--your-options-here (see --help)''
{{$}} make
{{prompt|root}} make install


You can fetch the current working tree using Git:
2. For Compiling VLMC:
  git clone git://git.videolan.org/vlc.git
{{$}} cd path_to_vlmc_src
{{$}} mkdir build && cd build
{{$}} cmake ..
{{$}} make


==Compiling VLMC==
3. Run VLMC:
 
{{$}} ./vlmc
Following is the cleanest way of compiling VLMC (commands for *nix OS)


1. Download source code of VLC and VLMC as described in http://wiki.videolan.org/GetTheSource
==== Building VLMC in developer mode ====
  git clone git://git.videolan.org/vlc.git


2. Compile and install libVLC, libVLC is required by VLMC, for example:
By default, VLMC enables a crash handler, which is responsible for saving a backup of the project in the event of a crash.
  cd path_to_vlc_src
  ./configure
  make
  sudo make install


3. Compile VLMC:
While this might be handy for the users, it makes life harder on developers, since a debugger would attach to the daemon process instead of VLMC.
  cd path_to_vlmc_src
  cmake .
  make


Now, to run VLMC:
In order to disable this, you'll need a tool such as ccmake, or cmake-gui, to disable the <code>WITH_CRASHHANDLER</code> option.
  ./vlmc


Now, start hacking ;-)
Alternatively, you can invoke cmake with <code>-DWITH_CRASHHANDLER=OFF</code> flag


==Linking VLMC to libVLC==
=== Cross Compiling VLMC for Windows on Linux ===


Have you built VLC in some directory like: ~/vlc/build
VLMC can be cross-compiled for Windows, on Linux using mingw:
{{$}} cd contribs
{{$}} sh contribs.sh
{{$}} cd ..
{{$}} mkdir win32 && cd win32
{{$}} cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-win32.cmake ..
{{$}} make


i.e you have compiled VLC using ./configure --prefix=SOME_PATH, For example:
=== Compiling on Mac OS ===
  ./configure --prefix=/home/user/vlc/build


==== Dependencies ====
* Build tools: Xcode command-line tools
* homebrew


1. Then, you need to link libVLC and add the include path to VLMC.
==== Get the sources: ====
{{$}} git clone https://code.videolan.org/videolan/vlmc.git


To do that, first open vlmc.pro file and add/edit LIB PATH as:
==== Get the actual dependencies: ====
  LIBS = -L/path_to_vlc_build/lib \
{{$}} brew tap tomahawk-player/tomahawkqt5
        -lvlc
{{$}} brew install make
{{$}} brew install vlc
{{$}} brew install qt5
{{$}} brew install frei0r


For example:
==== Compile vlmc: ====
  LIBS = -L/home/user/vlc/build/lib
Now cd to root source directory and build:
        -lvlc
{{$}} mkdir build && cd build
{{$}} cmake ..
{{$}} make


2. Then, you need to edit INCLUDEPATH in vlmc.pro:
This will by default create a Mac Bundle, <code>vlmc.app</code> in <code>/build/bin</code>
  path_to_vlc_src_include


For example:
==== To create a dmg image: ====
  INCLUDEPATH += src/LibVLCpp \
    src/gui \
    src/tools \
    src \
    /home/user/vlc/build/include


3. Now you need to add the path of libVLC to ld.so.conf so that linker knows the path of libVLC
To create a dmg image, uncomment <code>#dmg</code> in <code>/src/CMakeLists.txt</code>, at the end of the file.
  sudo vim /etc/ld.so.conf


Now, add path to libVLC in it:
This creates the <code>app/dmg</code> in <code>&lt;build-directory&gt;/bin</code>
  /home/user/vlc/build/lib


Now, update linker cache:
=== Packaging VLMC ===
  sudo ldconfig


If every thing's goes fine compile VLMC as describe in the "Compile" section of this page. This method is not advised as it may cause unnecessary problems.
* On Linux, you can create deb/rpm package by using:
{{$}} make package


* You can create NSIS installer for Windows using cross-compiling on Linux:
{{$}} make installer


Start hacking <span title="Wink">;-)</span>


''The page was last updated on June 22, 2009''
[[Category:Building]]
[[Category:VideoLAN projects]]

Latest revision as of 19:39, 9 March 2019

Building VLMC from source

This wiki page has information on building VideoLAN Movie Creator (VLMC) from source.

VLMC is a free video editing software, offering features to realize semi-professional quality movies, but with the aim to stay simple and user-friendly.

Resources

VLMC requires a c++ compiler (g++), cmake, Qt(4.6+), libVLC and frei0r plugins.

Getting the code

You can fetch the current VLMC working tree using Git:

$ git clone https://code.videolan.org/videolan/vlmc.git

Do the same for VLC (as described in GetTheSource):

$ git clone git://git.videolan.org/vlc.git

Building VLMC on Linux

Following is the cleanest way of compiling VLMC (commands for *nix OS)

1. Compile and install libVLC, libVLC is required by VLMC (you can also install VLC using your Linux distribution), for example:

$ cd path_to_vlc_src
$ ./bootstrap
$ ./configure --your-options-here (see --help)
$ make
# make install

2. For Compiling VLMC:

$ cd path_to_vlmc_src
$ mkdir build && cd build
$ cmake ..
$ make

3. Run VLMC:

$ ./vlmc

Building VLMC in developer mode

By default, VLMC enables a crash handler, which is responsible for saving a backup of the project in the event of a crash.

While this might be handy for the users, it makes life harder on developers, since a debugger would attach to the daemon process instead of VLMC.

In order to disable this, you'll need a tool such as ccmake, or cmake-gui, to disable the WITH_CRASHHANDLER option.

Alternatively, you can invoke cmake with -DWITH_CRASHHANDLER=OFF flag

Cross Compiling VLMC for Windows on Linux

VLMC can be cross-compiled for Windows, on Linux using mingw:

$ cd contribs
$ sh contribs.sh
$ cd ..
$ mkdir win32 && cd win32
$ cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-win32.cmake ..
$ make

Compiling on Mac OS

Dependencies

  • Build tools: Xcode command-line tools
  • homebrew

Get the sources:

$ git clone https://code.videolan.org/videolan/vlmc.git

Get the actual dependencies:

$ brew tap tomahawk-player/tomahawkqt5
$ brew install make
$ brew install vlc
$ brew install qt5
$ brew install frei0r

Compile vlmc:

Now cd to root source directory and build:

$ mkdir build && cd build
$ cmake ..
$ make

This will by default create a Mac Bundle, vlmc.app in /build/bin

To create a dmg image:

To create a dmg image, uncomment #dmg in /src/CMakeLists.txt, at the end of the file.

This creates the app/dmg in <build-directory>/bin

Packaging VLMC

  • On Linux, you can create deb/rpm package by using:
$ make package
  • You can create NSIS installer for Windows using cross-compiling on Linux:
$ make installer

Start hacking ;-)