camke, fix problems with libarchive/libtar on static build
fix problems with libarchive/libtar on static build.
static build returns errors because preprocessor directives in drumkit.cpp wount work as expected without the use of H2CORE_HAVE_LIBARCHIVE.
if you use libarchive instead of libtar compiling and linking works.
static build returns errors because preprocessor directives in drumkit.cpp wount work as expected without the use of H2CORE_HAVE_LIBARCHIVE.
if you use libarchive instead of libtar compiling and linking works.
Leave a comment
Hey wolke,
i've build hydrogen with the following options without problems on ubuntu 11.04. Have you used other options?
CMAKE_BUILD_TYPE:STRING=
CMAKE_INSTALL_PREFIX:PATH=/usr/local
HYDROGEN_INSTALLED:PATH=HYDROGEN_INSTALLED-NOTFOUND
LISTPLUGINS:FILEPATH=/usr/bin/listplugins
QT_QMAKE_EXECUTABLE:FILEPATH=/usr/bin/qmake
WANT_ALSA:BOOL=ON
WANT_DEBUG:BOOL=ON
WANT_JACK:BOOL=ON
WANT_JACKSESSION:BOOL=ON
WANT_LADSPA:BOOL=ON
WANT_LASH:BOOL=OFF
WANT_LIBARCHIVE:BOOL=OFF
WANT_LRDF:BOOL=OFF
WANT_OSS:BOOL=OFF
WANT_PORTAUDIO:BOOL=OFF
WANT_PORTMIDI:BOOL=OFF
WANT_RUBBERBAND:BOOL=OFF
WANT_SHARED:BOOL=OFF
i've build hydrogen with the following options without problems on ubuntu 11.04. Have you used other options?
CMAKE_BUILD_TYPE:STRING=
CMAKE_INSTALL_PREFIX:PATH=/usr/local
HYDROGEN_INSTALLED:PATH=HYDROGEN_INSTALLED-NOTFOUND
LISTPLUGINS:FILEPATH=/usr/bin/listplugins
QT_QMAKE_EXECUTABLE:FILEPATH=/usr/bin/qmake
WANT_ALSA:BOOL=ON
WANT_DEBUG:BOOL=ON
WANT_JACK:BOOL=ON
WANT_JACKSESSION:BOOL=ON
WANT_LADSPA:BOOL=ON
WANT_LASH:BOOL=OFF
WANT_LIBARCHIVE:BOOL=OFF
WANT_LRDF:BOOL=OFF
WANT_OSS:BOOL=OFF
WANT_PORTAUDIO:BOOL=OFF
WANT_PORTMIDI:BOOL=OFF
WANT_RUBBERBAND:BOOL=OFF
WANT_SHARED:BOOL=OFF
hi,
i use debian unstable:). my build options:
WANT_ALSA ON
WANT_DEBUG OFF
WANT_JACK ON
WANT_JACKSESSION ON
WANT_LADSPA ON
WANT_LASH OFF
WANT_LIBARCHIVE OFF
WANT_LRDF ON
WANT_OSS OFF
WANT_PORTAUDIO OFF
WANT_PORTMIDI OFF
WANT_RUBBERBAND OFF
WANT_SHARED OFF
and the result:
Linking CXX static library libhydrogen-core-0.9.6.a
[ 17%] Built target hydrogen-core-0.9.6
[ 17%] Building CXX object src/cli/CMakeFiles/h2cli.dir/main.cpp.o
[ 18%] Building CXX object src/player/CMakeFiles/h2player.dir/main.cpp.o
[ 18%] Building CXX object src/synth/CMakeFiles/h2synth.dir/main.cpp.o
[ 19%] Building CXX object src/tests/CMakeFiles/tests.dir/xml.cpp.o
Linking CXX executable h2player
[ 19%] Building CXX object src/tests/CMakeFiles/tests.dir/rubberband.cpp.o
Linking CXX executable h2cli
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: *** [src/cli/h2cli] Fehler 1
make[1]: *** [src/cli/CMakeFiles/h2cli.dir/all] Fehler 2
make[1]: *** Warte auf noch nicht beendete Prozesse...
make[2]: *** [src/player/h2player] Fehler 1
make[1]: *** [src/player/CMakeFiles/h2player.dir/all] Fehler 2
[ 20%] Building CXX object src/tests/CMakeFiles/tests.dir/tests.cpp.o
Linking CXX executable tests
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: *** [src/tests/tests] Fehler 1
make[1]: *** [src/tests/CMakeFiles/tests.dir/all] Fehler 2
Linking CXX executable h2synth
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: *** [src/synth/h2synth] Fehler 1
make[1]: *** [src/synth/CMakeFiles/h2synth.dir/all] Fehler 2
make: *** [all] Fehler 2
greetings wolke
i use debian unstable:). my build options:
WANT_ALSA ON
WANT_DEBUG OFF
WANT_JACK ON
WANT_JACKSESSION ON
WANT_LADSPA ON
WANT_LASH OFF
WANT_LIBARCHIVE OFF
WANT_LRDF ON
WANT_OSS OFF
WANT_PORTAUDIO OFF
WANT_PORTMIDI OFF
WANT_RUBBERBAND OFF
WANT_SHARED OFF
and the result:
Linking CXX static library libhydrogen-core-0.9.6.a
[ 17%] Built target hydrogen-core-0.9.6
[ 17%] Building CXX object src/cli/CMakeFiles/h2cli.dir/main.cpp.o
[ 18%] Building CXX object src/player/CMakeFiles/h2player.dir/main.cpp.o
[ 18%] Building CXX object src/synth/CMakeFiles/h2synth.dir/main.cpp.o
[ 19%] Building CXX object src/tests/CMakeFiles/tests.dir/xml.cpp.o
Linking CXX executable h2player
[ 19%] Building CXX object src/tests/CMakeFiles/tests.dir/rubberband.cpp.o
Linking CXX executable h2cli
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: *** [src/cli/h2cli] Fehler 1
make[1]: *** [src/cli/CMakeFiles/h2cli.dir/all] Fehler 2
make[1]: *** Warte auf noch nicht beendete Prozesse...
make[2]: *** [src/player/h2player] Fehler 1
make[1]: *** [src/player/CMakeFiles/h2player.dir/all] Fehler 2
[ 20%] Building CXX object src/tests/CMakeFiles/tests.dir/tests.cpp.o
Linking CXX executable tests
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: *** [src/tests/tests] Fehler 1
make[1]: *** [src/tests/CMakeFiles/tests.dir/all] Fehler 2
Linking CXX executable h2synth
/usr/bin/ld: ../core/libhydrogen-core-0.9.6.a(drumkit.cpp.o): undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /usr/lib/libz.so.1 so try adding it to the linker command line
/usr/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: *** [src/synth/h2synth] Fehler 1
make[1]: *** [src/synth/CMakeFiles/h2synth.dir/all] Fehler 2
make: *** [all] Fehler 2
greetings wolke