Open avilleret opened 9 years ago
What is the target that requires libasound ? I'll add it. As a side note, you can now switch to the dev branch :)
libAudioEngine.ttso
Linking CXX shared library ../../../libAudioEngine.ttso
/usr/bin/ld: ne peut trouver -lasound
collect2: error: ld returned 1 exit status
DSP/extensions/AudioEngine/CMakeFiles/AudioEngine.dir/build.make:88: recipe for target 'libAudioEngine.ttso' failed
make[2]: *** [libAudioEngine.ttso] Error 1
CMakeFiles/Makefile2:1831: recipe for target 'DSP/extensions/AudioEngine/CMakeFiles/AudioEngine.dir/all' failed
make[1]: *** [DSP/extensions/AudioEngine/CMakeFiles/AudioEngine.dir/all] Error 2
Makefile:147: recipe for target 'all' failed
make: *** [all] Error 2
Weird, it seems to be because portaudio depends on libasound. But normally when you installed portaudio19-dev it should have installed libasound-dev too : http://packages.ubuntu.com/trusty/portaudio19-dev
And when portaudio is not found, AudioEngine should already fail (AudioEngine/CMakeLists.txt) :
find_package(Portaudio)
if(NOT PORTAUDIO_FOUND)
message(STATUS "Package portaudio required, but not found! Won't build AudioEngine extension.")
return()
endif()
ok so one more weird thing on my computer... I have that:
$ find /usr/ -name libportaudio*
/usr/lib/x86_64-linux-gnu/libportaudio.so.2
/usr/lib/x86_64-linux-gnu/libportaudio.so.2.0.0
/usr/local/lib/libportaudio.so
/usr/local/lib/libportaudio.a
/usr/local/lib/libportaudio.so.2.0.0.bak
/usr/local/lib/libportaudio.so.2
/usr/local/lib/libportaudio.so.2.0.0
/usr/local/lib/libportaudio.la
/usr/share/doc/libportaudio2
and the libportaudio-dev package is not installed yet
so maybe you can add a catch for that and throw a message like :
libportaudio found but not libasound :
"clean up your computer dude and come back later !"
:-)
The fix should have been merged, could you check ?
which fix ? on branch dev I still have the same issue when linking and no warning when running cmake
the whole log is here : https://gist.github.com/avilleret/f7f0f7d745d235ace884
I think I found the issue, PureData comes with its own portaudio-2.0 distribution, and when installing puredata, it installs /usr/local/include/portaudio.h
and this abuse cmake which then suppose to find libportaudio but fails (and I don't know why).
installing portaudio from ubuntu repo fix that
sorry for the noise
on Ubuntu, without libasound-dev package installed,
make
failed with CMake build system (branch https://github.com/jamoma/JamomaCore/tree/feature/cmake)I guess we should check for libasound-dev when configuring build, and make the configure script fail or disable everything that need libasound.