So decided to try to build LMMS with VeSTige and Carla support on Linux. got as far as cmake to configure, and for some reason it will not accept my calra install
I use the cmake line
cmake .. -DCMAKE_INSTALL_PREFIX=../target/ -DCMAKE_PREFIX_PATH=/usr/lib/wine-vanilla-2.0.3 -DCMAKE_PREFIX_PATH=/usr/local/bin/carla-patchbay -DCMAKE_PREFIX_PATH=/usr/local/bin/carla-rack
And I get the following error in the log
-- Checking for module 'carla-standalone>=1.9.5'
-- No package 'carla-standalone' found
- Carla Patchbay & Rack : not found, please install the latest carla
However, installed carla this morning (version 1.9.2 (2.0 beta5), information I took straight from carla, running on my machine
What am I missing?
The carla-git package is required for building with LMMS as described here: https://github.com/LMMS/lmms/wiki/dependencies-ubuntu#carla.
Unfortunately we don't have good Gentoo instructions, so those steps would be missed for a non-Ubuntu build machine. Does that help?
Also, I think your DCMAKE_PREFIX_PATH syntax is wrong. Can you try adding them all with semicolons separating them? (or if that doesn't work you can try : instead).
Will try that, as I use Gentoo I'll have to find the git repository for the libraries?
(hoping I can find them, but also asking in general)
@vrghost242 carla-git is the name of the package from KXStudios and it contains some hooks that LMMS requires in order to talk to it. I'll defer the question to the author -- @falkTX -- for how to compile the equivalent of carla-git from source.
This was partially why I was asking, I installed it from carla-git, built from scratch hollowing the instructions in the install file. Do you know any files or anything it should be looking for, just so I can see if it is missing on my system or the system is looking in the wrong place.
Probably better to defer to @falkTX rather than speculating, but my notes have the following information:
carla/resources contains PyQt scripts required for launchlibcarla_standalone2.so is what our AppImage looks forHere's a couple conversations that might shed light on it: https://github.com/LMMS/lmms/issues/2429#issuecomment-348087032, https://github.com/LMMS/lmms/pull/4026
-DCMAKE_PREFIX_PATH=/usr/local/bin/carla-rack is definitely wrong.
In order for lmms to find carla, you need to have it installed before and in a place where pkg-config can find it.
basically this command needs to return something useful:
pkg-config --cflags --libs carla-standalone
So maybe you're missing PKG_CONFIG_PATH env var.
One (or all of you) where right. don't faff with DCMAKE_PREFIX_PATH for carla (but you might need to for wine)
So, if any other Gentoo users want to install LMMS from scratch (with Carla and Vestige)
To save your self time, emerge lmms (it is available but without Vestige and Carla), then just delete it, that way you get all the libs set up.
emerge --ask lmms
And bonus tip for Gentoo users, you'll need to emerge the following packages as well
emerge --ask List-MoreUtils
Set PKG_CONFIG_PATH
export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig
Test with pkg-config --cflags --libs carla-standalone
Otherwise the build will fail
I ran into another issue, which is that I only have 64bit libs, will update if I get passed it
For Gentoo, the key problem is that Carla is installing its 64-bit libraries in /usr/lib (where 32-bit libraries and pkgconfig (.pc) files are stored) instead of /usr/lib64 (where the 64-bit libraries and .pc files are stored). I don't know if this is a mistake in the build system, or one in the ebuild.
As a simple workaround (if you're using the 64-bit ABI), doing the following after installing Carla via Portage will allow LMMS (also installed through Portage) to detect it:
`sudo ln -s /usr/lib/pkgconfig/carla-* /usr/local/lib64/pkgconfig/
I would advise against using the PKG_CONFIG_PATH="/usr/lib/pkgconfig"option, as this will cause all the plugins except for carla to be doubled-up, since it's detecting the other plugins in the /usr/lib64/pkgconfig folder, as well as the same ones in the /usr/lib/pkgconfig one.
I hope this helps!`
the key problem is that Carla is installing its 64-bit libraries in /usr/lib (where 32-bit libraries and pkgconfig (.pc) files are stored) instead of /usr/lib64 (where the 64-bit libraries and .pc files are stored). I don't know if this is a mistake in the build system, or one in the ebuild.
I can't find any issues in the CMakeLists.txt, it just calls PKG_CHECK_MODULES:
PKG_CHECK_MODULES(CARLA carla-native-plugin)
I would advise against using the
PKG_CONFIG_PATH="/usr/lib/pkgconfig"option, as this will cause all the plugins except for carla to be doubled-up
馃憤
@reteo can you file a bug with Gentoo so that this issue is being tracked upstream? The symbolic link fix you mention is great to get it up and running, but pkg-config should be finding it without workarounds, I'd think, and we don't have much to do with pkg-config here (as opposed to CMake, where we can bundle our own FindFoo.cmake modules).
I've already placed a bug with the audio-overlay github tracker, so we'll see what happens. In the meantime, I added the workaround here because it scores pretty highly in Google, and will help anyone else with Gentoo wanting a quick fix to the problem.
One more step for Gentoo users, by the way, in addition to the above, you will also need to add the following line to your make.conf:
PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig"
Or, if you want to get fancy, you can add the above to /etc/portage/env/lmms.conf and then add the following to /etc/portage/package.env:
media-sound/lmms lmms.conf
you will also need to add the following line to your make.conf:
PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig"
This reinforces @falkTX's comment here, quoting:
basically this command needs to return something useful:
pkg-config --cflags --libs carla-standaloneSo maybe you're missing
PKG_CONFIG_PATHenv var.
For these reasons, the bug no longer belongs to LMMS. For that reason, I'm closing this as not-our-bug|upstream, but please feel free to continue any relevant discussion here, or request a re-open if this statement can be proven incorrect. 馃嵒
Something to keep in mind: It's not just the PKG_CONFIG_PATH that needs to be set.
For a summary of the workaround for Gentoo users, here are the steps again:
sudo ln -s /usr/lib/pkgconfig/carla-* /usr/local/lib64/pkgconfig/; this will make a link from the pkgconfig files in the wrong location to a separate location./etc/portage/make.conf or /etc/portage/env/lmms.conf to include this line: PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig/etc/portage/env/lmms.conf file, you'll also need to add this to the /etc/portage/package.env file: media-sound/lmms lmms.confOn a side note, I eventually decided to move the links to their own directory, /usr/local/lib64/pkgconfig/carla and use the /etc/portage/env/lmms.conf step. This way, I can isolate the carla pkgconfig files, and LMMS will, when being installed, only look for them there, and not find a whole bunch of other things that may be duplicates of other installed things (or completely unrelated things). It will also isolate this to LMMS, so that other packages won't bother looking for Carla's plugins during installation.