kmatheussen / radium

A graphical music editor. A next generation tracker.
http://users.notam02.no/~kjetism/radium/
GNU General Public License v2.0
835 stars 36 forks source link

HOW TO MAKE IT RUN

      1. Install dependencies. See "BUILD DEPENDENCIES, *" below in this file.

      2. Do this:

      "
      export RADIUM_QT_VERSION=5
      make packages
      BUILDTYPE=RELEASE ./build_linux.sh -j `nproc`
      QT_QPA_PLATFORM_PLUGIN_PATH=`$(./find_moc_and_uic_paths.sh qmake) -query QT_INSTALL_PLUGINS` bin/radium
      "

      If you want to use clang instead of gcc, first run this line before running "make packages":
      export RADIUM_USE_CLANG=1

      Note: There is an install.sh script, and it works. But you don't need it to run the program.

IF YOU GOT THE SOURCE FROM GIT

 WARNING: Only release-tagged commits should be considered stable.
 If you only do "git clone" and compile that version of Radium, there's
 a good chance the program won't compile, or will crash.

 You can download a stable version of the source by doing:

     wget https://github.com/kmatheussen/radium/archive/<version>.tar.gz

 However, if you still want to use GIT, you sometimes have to execute

      make very_clean

 ...after a git pull, since not all dependencies are tracked in the makefile.

IF YOU ARE DEVELOPING RADIUM If you want to use clang instead of gcc, first run this line before running "make packages" and "build_linux.sh":

    export RADIUM_USE_CLANG=1

 If you don't want to include the llvm backend for the faustdev instrument (for instance if you don't have llvm), run this line first:

    export INCLUDE_FAUSTDEV_BUT_NOT_LLVM="jadda"

 If you don't want to bother with installing qt-webkit, but instead use the lesser supported qt-webengine (which is included with Qt),
 run this line first:

    export USE_QWEBENGINE=1

 Then run these lines:

    # Debug build. Lots of assertions. Very slow. Don't build this version if you are just testing the program.
    export RADIUM_QT_VERSION=5
    export QT_QPA_PLATFORM_PLUGIN_PATH=`$(./find_moc_and_uic_paths.sh qmake) -query QT_INSTALL_PLUGINS`
    make packages # Only necessary one time.  Note: Linking fails first run. See comment in bin/packages/build.sh about Visualization Library.
    BUILDTYPE=DEBUG_FAST ./build_linux.sh -j`nproc` && ./run_gdb.sh

 There are three types of BUILD_TYPE:

    RELEASE    - Compiled with -O2/-O3 and without various assertions.
    DEBUG_FAST - Same as DEBUG + -O2/-O3. Quite slow, but usually acceptable.
    DEBUG      - Compiled with -O0/-ggdb + asan/etc + various assertions. Very slow, it's usually
                 better to use DEBUG_FAST and temporarily add -O0 to the Makefile for those files
                 where you need better debug info, and recompile those files.

INTRODUCTION Radium is a free (as in speech) music editor with a novel interface. It's inspired by trackers, but has fewer limitations and uses graphics to show musical data.

BUILD DEPENDENCIES, all platforms:

    * VST headers from steinberg. The necessary files should be incuded in
      "VST Audio Plug-Ins SDK", which you can download here:

         http://www.steinberg.net/en/company/developers.html

     After downloading the VST SDK, unpack it into your ~/SDKs folder.

BUILD DEPENDENCIES, fedora:

    In addition to OpenGL, you also need:

    python2-devel
    alsa-lib-devel
    jack-audio-connection-kit-devel
    libsamplerate-devel
    liblrdf-devel
    libsndfile-devel
    ladspa-devel
    glib2-devel
    ladspa-calf-plugins
    binutils-devel
    libtool-ltdl
    libtool
    tk
    libogg-devel
    libvorbis-devel
    speex-devel
    fftw-devel
    guile
    libxkbfile-devel
    xorg-x11-util-macros
    cmake
    libXrandr-devel
    llvm-devel
    boost-devel
    openssl-devel
    ncurses-devel
    xcb-util-keysyms-devel
    qt5-qtbase-gui
    qt5-qttools-common
    qt5-qtwebkit-devel
    qt5-qtx11extras-devel
    qt5-qttools-static
    gmp-devel
    mpfr-devel
    libmpc-devel

    * Or in one line:

    qt4-devel python2-devel alsa-lib-devel jack-audio-connection-kit-devel libsamplerate-devel liblrdf-devel libsndfile-devel ladspa-devel glib2-devel ladspa-calf-plugins binutils-devel libtool-ltdl libtool tk libogg-devel libvorbis-devel speex-devel fftw-devel guile libxkbfile-devel xorg-x11-util-macros cmake libXrandr-devel qtwebkit-devel llvm-devel boost-devel openssl-devel ncurses-devel xcb-util-keysyms-devel qt5-qtbase-gui qt5-qtwebkit-devel qt5-qtx11extras-devel qt5-qttools-static gmp-devel mpfr-devel libmpc-devel

    (tested on Fedora 17/19/20/22 64 bit)

BUILD DEPENDENCIES, ubuntu/debian/etc.:

ACKNOWLEDGMENT See http://users.notam02.no/~kjetism/radium/documentation.php#acknowledgment

CONTACT k.s.matheussen@notam02.no http://www.notam02.no/radium/