mirror of
https://github.com/game-stop/veejay.git
synced 2025-12-05 15:30:02 +01:00
HelpUpdate : Again compile / build / install review !
This commit is contained in:
@@ -36,7 +36,7 @@ The video output server (Ffmpeg/libSDL), a 'visual' instrument and realtime vide
|
||||
|
||||
First, make sure you system is up-to-date, and install the dependencies with:
|
||||
```bash
|
||||
sudo apt-get install git autoconf automake libtool m4 gcc libjpeg62-dev \
|
||||
sudo apt-get install build-essential autoconf automake libtool m4 gcc libjpeg62-dev \
|
||||
libswscale-dev libavutil-dev libavcodec-dev libavformat-dev libx11-dev \
|
||||
gtk-3.0-dev libxml2-dev libsdl2-dev libjack0 libjack-dev jackd1
|
||||
```
|
||||
@@ -56,7 +56,7 @@ For __each package__, run the triptich commands of the *GNU build system* (for a
|
||||
```bash
|
||||
./autogen.sh
|
||||
./configure
|
||||
make && sudo make install
|
||||
make -j$(nproc) && sudo make install
|
||||
```
|
||||
__IMPORTANT :__ in some configuration you should have to __manually build__ the __shared libraries cache__ just after the __first veejay-core__ installation (ex `sudo ldconfig` or similar)
|
||||
|
||||
@@ -65,6 +65,8 @@ If you want help to build for a specific architecture or with or without particu
|
||||
|
||||
Before running veejay, be sure to add or link some TrueType fonts in `$HOME/.veejay/fonts`
|
||||
|
||||
Additional information about building veejay packages can be found in [HOWTO.compile.md](./veejay-current/veejay-server/doc/HOWTO.compile.md)
|
||||
|
||||
## Usage
|
||||
|
||||
Running veejay is a much too large topic to cover in this readme. Various
|
||||
|
||||
142
veejay-current/veejay-server/doc/HOWTO.compile.md
Normal file
142
veejay-current/veejay-server/doc/HOWTO.compile.md
Normal file
@@ -0,0 +1,142 @@
|
||||
|
||||
# Compiling Veejay
|
||||
|
||||
Veejay is divided into multiple packages. Each must be build separately and in a specific order.
|
||||
|
||||
1. [veejay-core](https://github.com/c0ntrol/veejay/tree/master/veejay-current/veejay-core) (__required__)
|
||||
2. [veejay-server](https://github.com/c0ntrol/veejay/tree/master/veejay-current/veejay-server) (__required__)
|
||||
3. [veejay_client](https://github.com/c0ntrol/veejay/tree/master/veejay-current/veejay-client) (*optional*)
|
||||
4. [veejay-utils](https://github.com/c0ntrol/veejay/tree/master/veejay-current/veejay-utils) (*optional*)
|
||||
5. [plugin-packs](https://github.com/c0ntrol/veejay/tree/master/veejay-current/plugin-packs) (*optional*)
|
||||
|
||||
## Prerequisities
|
||||
|
||||
Required:
|
||||
* Build-essential
|
||||
* FFmpeg (libavcodec, libavformat, libavutil, libswscale) *please use ffmpeg instead of libav*
|
||||
* libjpeg
|
||||
* libxml2 for saving project data
|
||||
* SDL 2 for the video window
|
||||
* libdv for playback of DV Video
|
||||
* [http://www.gtk.org] GTK3 (3.22 recommanded)
|
||||
* [http://www.gnome.org] GdkPixbuf (comes with Gnome)
|
||||
* Cairo (needed for Reloaded)
|
||||
* GtkCairo (needed for Reloaded)
|
||||
* Libquicktime for Quicktime]
|
||||
* Video4Linux II
|
||||
* libpthread
|
||||
* Glade (needed for Reloaded)
|
||||
|
||||
Optional:
|
||||
* liblo
|
||||
* DirectFB for secundary head (TVOut)
|
||||
* Jack for audio playback
|
||||
* G'MIC - GREYC's Magic for Image Computing
|
||||
* libqrencode (Android VJ remote control)
|
||||
|
||||
First, make sure you system is up-to-date, and install (in debian like system) the required dependencies with:
|
||||
```bash
|
||||
sudo apt-get install build-essential git autoconf automake libtool m4 gcc libjpeg62-dev \
|
||||
libswscale-dev libavutil-dev libavcodec-dev libavformat-dev libx11-dev \
|
||||
gtk-3.0-dev libxml2-dev libsdl2-dev libjack0 libjack-dev jackd1
|
||||
```
|
||||
|
||||
## Quick and dirty build instructions
|
||||
|
||||
Normally, you can just run `./configure`.
|
||||
If you have cloned the veejay git respository, you will need to run `./autogen.sh` first to produce the configure file.
|
||||
|
||||
|
||||
## Configure options
|
||||
|
||||
`PKG_CONFIG_PATH` is a environment variable that specifies additional paths in which `pkg-config` will search for its `.pc` files.
|
||||
|
||||
If you need additional paths, before running configure, check if the PKG_CONFIG_PATH variable is setup correctly:
|
||||
```
|
||||
$ echo $PKG_CONFIG_PATH
|
||||
```
|
||||
If echo is silent, you must set the PKG_CONFIG_PATH to point to the directory containing your additional .pc files (for homebrew library installation)
|
||||
|
||||
|
||||
### Configure flags
|
||||
|
||||
`--enable-debug` Builds veejay for debugging purposes (disables optimization). See also `--enable-profiling`
|
||||
`--with-arch-target=generic` Build veejay for generic x86 cpu-type. If the default is used (auto), the resulting binary may not run on another computer.
|
||||
`--without-jack` Build veejay without sound suppport. Useful when you just care of visuals ouput. Veejay will have more ressources (cpu/memory) to play your videos.
|
||||
|
||||
You can see all the configure flags with `./configure --help`
|
||||
|
||||
## Building
|
||||
|
||||
1. Get the last sources from Veejay's repository:
|
||||
```
|
||||
$ git clone git://github.com/c0ntrol/veejay.git veejay
|
||||
```
|
||||
2. Enter the source directory
|
||||
```
|
||||
$ cd veejay/veejay-current
|
||||
```
|
||||
3. Move to current software to build and run autogen.sh
|
||||
```
|
||||
$ cd veejay-core
|
||||
$ sh autogen.sh
|
||||
```
|
||||
3. Run ./configure
|
||||
```
|
||||
$ ./configure
|
||||
```
|
||||
4. Type 'make' to build veejay
|
||||
```
|
||||
$ make -j$(nproc)
|
||||
```
|
||||
5. Installing
|
||||
```
|
||||
$ sudo make install && sudo ldconfig
|
||||
```
|
||||
6. Repeat from step __3__ to __5__ inside `veejay-server` directory
|
||||
|
||||
7. *optional* continue with building `veejay-client` and `veejay-utils`
|
||||
```
|
||||
$ cd veejay-client
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
|
||||
$ cd veejay-utils
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
```
|
||||
8. *optional* continue with building the plugin-packs (repeat for all plugins pack you want to install)
|
||||
```
|
||||
$ cd plugin-packs/lvdgmic
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
$ cd plugin-packs/lvdcrop
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
```
|
||||
|
||||
## Test your build
|
||||
|
||||
You will start veejay, connect the user interface and quit veejay.
|
||||
|
||||
Test if veejay works:
|
||||
```
|
||||
$ veejay -d -n
|
||||
```
|
||||
|
||||
Start another terminal and type:
|
||||
```
|
||||
$ reloaded -a
|
||||
```
|
||||
|
||||
Open another terminal (depends on sayVIMS, build in step 7)
|
||||
```
|
||||
$ sayVIMS -m "600:;"
|
||||
```
|
||||
|
||||
(or press CTRL-C in the terminal running veejay)
|
||||
|
||||
@@ -1,117 +0,0 @@
|
||||
|
||||
# Compiling Veejay
|
||||
|
||||
|
||||
## Prerequisities
|
||||
|
||||
Required:
|
||||
|
||||
* Build-essential
|
||||
* FFmpeg (libavcodec, libavformat, libavutil, libswscale) *please use ffmpeg instead of libav*
|
||||
* libjpeg
|
||||
* libxml2 for saving project data
|
||||
* SDL 2 for the video window
|
||||
* libdv for playback of DV Video
|
||||
* [http://www.gtk.org GTK-2.4 (GTK 2.6 recommended)
|
||||
* [http://www.gnome.org GdkPixbuf (comes with Gnome)
|
||||
* Cairo (needed for GVeejay Reloaded)
|
||||
* GtkCairo (needed for GVeejay Reloaded)
|
||||
* Libquicktime for Quicktime]
|
||||
* Video4Linux II
|
||||
* libpthread
|
||||
* Glade (needed for GVeejay Reloaded)
|
||||
|
||||
Optional:
|
||||
* liblo
|
||||
* DirectFB for secundary head (TVOut)
|
||||
* Jack for audio playback
|
||||
* G'MIC - GREYC's Magic for Image Computing
|
||||
* libqrencode (Android VJ remote control)
|
||||
|
||||
## Generic build instructions
|
||||
|
||||
Normally, you can just run 'configure'. If you have cloned the veejay git respository, you will need to run autogen.sh first to produce the configure file.
|
||||
|
||||
|
||||
## Configure options
|
||||
|
||||
Before running configure, check if the PKG_CONFIG_PATH variable is setup correctly:
|
||||
|
||||
$ echo $PKG_CONFIG_PATH
|
||||
|
||||
If echo is silent, you must set the PKG_CONFIG_PATH to point to the directory containing all your .pc files (like for example libdv.pc or jack.pc )
|
||||
|
||||
|
||||
### Configure flags
|
||||
|
||||
`--enable-debug` Builds veejay for debugging purposes (disables optimization) see also profiling ?
|
||||
`--with-arch-target=generic` Build veejay for generic x86 cpu-type. If the default is used (auto), the resulting binary may not run on another computer.
|
||||
--without-jack ?
|
||||
|
||||
## Building
|
||||
|
||||
1. Get the sources from Veejay's repository:
|
||||
<pre>
|
||||
$ git clone git://github.com/c0ntrol/veejay.git veejay
|
||||
</pre>
|
||||
2. Enter the source directory and run autogen.sh
|
||||
<pre>
|
||||
$ cd veejay/veejay-current
|
||||
$ cd veejay-server
|
||||
$ sh autogen.sh
|
||||
</pre>
|
||||
3. Run ./configure
|
||||
<pre>
|
||||
$ ./configure
|
||||
</pre>
|
||||
4. Type 'make' to build veejay
|
||||
<pre>
|
||||
$ make
|
||||
</pre>
|
||||
5. Installing
|
||||
<pre>
|
||||
$ sudo make install
|
||||
</pre>
|
||||
6. *optional* continue with building veejay-client and veejay-utils
|
||||
<pre>
|
||||
$ cd veejay-client
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
|
||||
$ cd veejay-utils
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
</pre>
|
||||
7. *optional* continue with building the plugin-packs
|
||||
<pre>
|
||||
$ cd plugin-packs/lvdgmic
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
$ cd plugin-packs/lvdcrop
|
||||
$ sh autogen.sh
|
||||
$ ./configure
|
||||
$ make && sudo make install
|
||||
</pre>
|
||||
|
||||
## Test your build
|
||||
|
||||
Test if veejay works:
|
||||
<pre>
|
||||
$ veejay -d -n
|
||||
</pre>
|
||||
|
||||
Start another terminal and type:
|
||||
<pre>
|
||||
$ reloaded
|
||||
</pre>
|
||||
|
||||
Open another terminal (depends on sayVIMS, build in step 6)
|
||||
<pre>
|
||||
$ sayVIMS -m "600:;"
|
||||
</pre>
|
||||
|
||||
(or press CTRL-C in the terminal running veejay)
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
|
||||
[//]: # ( comment : END installation section duplicated in /README.md)
|
||||
[//]: # ( comment : BEGIN installation section duplicated in /README.md)
|
||||
[//]: # ( WARNING : some URL/PATH have to be adapted )
|
||||
|
||||
## Get all the dependencies
|
||||
|
||||
First, make sure you system is up-to-date, and install the dependencies with:
|
||||
First, make sure you system is up-to-date, and install (in debian like system) the required dependencies with:
|
||||
```bash
|
||||
sudo apt-get install git autoconf automake libtool m4 gcc libjpeg62-dev \
|
||||
sudo apt-get install build-essential autoconf automake libtool m4 gcc libjpeg62-dev \
|
||||
libswscale-dev libavutil-dev libavcodec-dev libavformat-dev libx11-dev \
|
||||
gtk-3.0-dev libxml2-dev libsdl2-dev libjack0 libjack-dev jackd1
|
||||
```
|
||||
@@ -26,7 +26,7 @@ For __each package__, run the triptich commands of the *GNU build system* (for a
|
||||
```bash
|
||||
./autogen.sh
|
||||
./configure
|
||||
make && sudo make install
|
||||
make -j$(nproc) && sudo make install
|
||||
```
|
||||
__IMPORTANT :__ in some configuration you should have to __manually build__ the __shared libraries cache__ just after the __first veejay-core__ installation (ex `sudo ldconfig` or similar)
|
||||
|
||||
@@ -35,6 +35,8 @@ If you want help to build for a specific architecture or with or without particu
|
||||
|
||||
Before running veejay, be sure to add or link some TrueType fonts in `$HOME/.veejay/fonts`
|
||||
|
||||
Additional information about building and configuring veejay packages can be found in [HOWTO.compile.md](./HOWTO.compile.md)
|
||||
|
||||
## Usage
|
||||
|
||||
Running veejay is a much too large topic to cover in this readme. Various
|
||||
@@ -100,3 +102,7 @@ If you want to debug veejay-server (or if you want to submit a meaningful backtr
|
||||
./configure --enable-debug
|
||||
|
||||
see also : [How to debug](./HowToDebugging.txt)
|
||||
|
||||
|
||||
[//]: # ( comment : END installation section duplicated in /README.md)
|
||||
[//]: # ( WARNING : some URL/PATH have to be adapted )
|
||||
|
||||
@@ -357,24 +357,29 @@ Decompress and untar the file by typing:
|
||||
```
|
||||
$ tar -jxvf veejay-1.5.x.tar.bz2
|
||||
```
|
||||
Change to the directory containing veejay's source's and configure the build:
|
||||
Veejay is divided in several packages. First you need the core libraries and veejay application.
|
||||
|
||||
Change to the directory containing veejay's core source's and configure the build:
|
||||
```
|
||||
$ cd veejay-1.5.x/veejay-current/veejay-server
|
||||
$ cd veejay-1.5.x/veejay-current/veejay-core
|
||||
|
||||
$ ./configure
|
||||
```
|
||||
On completion it will summarize the results of the `./configure` script.
|
||||
You can run `./configure --help` to view all configure options and tweak your installation.
|
||||
|
||||
Now, you can start building veejay (using all cores)
|
||||
Now, you can start building the core library (using all cores)
|
||||
```
|
||||
$ make -j$(nproc)
|
||||
```
|
||||
Followed by
|
||||
```
|
||||
# make install && ldconfig
|
||||
# sudo make install && sudo ldconfig
|
||||
```
|
||||
For **full installation instruction** please refer to this [documentation](./Installation.md)
|
||||
|
||||
Repeat the same process (appart `ldconfig`) for veejay-server and other needed packages.
|
||||
|
||||
For **full installation instruction** please refer to [Installation.md](./Installation.md)
|
||||
|
||||
<span id="3.3">3.3 Installing from repository</span>
|
||||
-------------------------------------------
|
||||
@@ -386,9 +391,12 @@ Download the last source code by typing :
|
||||
```
|
||||
$ git clone https://github.com/c0ntrol/veejay.git
|
||||
```
|
||||
Enter the directory containing veejay's source's :
|
||||
Veejay is divided in several packages. First you need the core libraries and veejay application.
|
||||
|
||||
Change to the directory containing veejay's core source's and configure the build:
|
||||
|
||||
```
|
||||
$ cd veejay/veejay-current/veejay-server
|
||||
$ cd veejay/veejay-current/veejay-core
|
||||
```
|
||||
You need to prepare and configure the build:
|
||||
```
|
||||
@@ -398,7 +406,7 @@ $ ./configure
|
||||
On completion it will summarize the results of the `./configure` script.
|
||||
You can run `./configure --help` to view all configure options and tweak your installation.
|
||||
|
||||
Now, you can start building veejay (using all cores)
|
||||
Now, you can start building the libraries (using all cores)
|
||||
```
|
||||
$ make -j$(nproc)
|
||||
```
|
||||
@@ -406,7 +414,10 @@ Followed by
|
||||
```
|
||||
# make install && ldconfig
|
||||
```
|
||||
For **full installation instruction** please refer to this [documentation](./Installation.md)
|
||||
|
||||
Repeat the same process (appart `ldconfig`) for veejay-server and other needed packages.
|
||||
|
||||
For **full installation instruction** please refer to [Installation.md](./Installation.md)
|
||||
|
||||
<span id="3.4">3.4 Setting up multicast</span>
|
||||
------------------------
|
||||
|
||||
Reference in New Issue
Block a user