milkytracker / MilkyTracker

An FT2 compatible music tracker
http://milkytracker.github.io/
Other
1.69k stars 162 forks source link

Build issues on Linux: submodules not found by cmake #206

Closed CorvusCorax closed 4 years ago

CorvusCorax commented 4 years ago

On Ubuntu 18.04.4 LTS Branch "master"

When following the Install.md tutorial:

git submodule update --init --recursive
mkdir build
cd build
cmake ..

leads to:

-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Deprecation Warning at CMakeLists.txt:176 (cmake_policy):
  The OLD behavior for policy CMP0004 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") 
-- Could NOT find LHASA (missing: LHASA_LIBRARY LHASA_INCLUDE_DIR) 
-- Could NOT find ZZIPLIB (missing: ZZIPLIB_LIBRARY ZZIPLIB_INCLUDE_DIR) 
-- Found ALSA: /usr/lib/x86_64-linux-gnu/libasound.so (found version "1.1.3") 
-- Found JACK: /usr/lib/x86_64-linux-gnu/libjack.so (found version "1.9.12") 
-- Could NOT find RTMIDI (missing: RTMIDI_LIBRARY RTMIDI_INCLUDE_DIR) (Required is at least version "2.1.0")
MIDI support disabled (RtMidi unavailable)
LHA decompressor disabled (lhasa unavailable)
-- Enabled GZIP decompressor
ZIP decompressor disabled (zziplib unavailable)
-- Enabled ALSA support
-- Enabled JACK support
-- Enabled SDL2 support
-- Configuring done
-- Generating done
-- Build files have been written to: /home/raven/src/MilkyTracker/build

The submodules are not found, nor automatically compiled, the features they provide remain disabled.

dwhinham commented 4 years ago

This is intentional - on Linux, we want to use the system/distro-provided versions of these libraries. The submodules only exist as a solution for Windows and macOS where there is no standard package manager for C++ shared libraries.

The docs could be clarified, but if you check them again, we say:

To build the SDL port of MilkyTracker you will need the following development libraries installed on your system ... For all non-Windows/macOS ports, the decompression libs (optional): ...

along with:

The following Git submodules are provided for linking into the Windows and macOS binaries:

On Ubuntu, simply run sudo apt-get install liblhasa-dev libzzip-dev librtmidi-dev and re-run CMake.

Cheers, Dale 😃

CorvusCorax commented 4 years ago

could you add that info to Install.md then?

dwhinham commented 4 years ago

could you add that info to Install.md then?

Done.