PlugData

Nog een vraag: ik loop elke keer weer tegen het probleem aan dat ik er niets van begrijp hoe dat met bron codes, binaries, dependencies, building from source, etc. zit. Het is of er door ontwikkelaars op GitHub e.d. een vreemde taal wordt gesproken. Is er een boek waarin al dergelijke zaken grondig worden uitgelegd?
Projecten worden in verschillende talen met verschillende tools das moeilijk omdat het process steeds anders is.
Anyhow ik zou het gewoon proberen
Volg wat er op git voor de build instructies staat.
Als je een error hebt evt googlen of AI erbij halen.
Om een project te compilen heb je alle build dependencies nodig.
Dus beter gewoon de binarie instaleren tenzij je het leuk vind.

Weet geen boek.

Wellicht is dit iets.


Bash:
git clone --recursive https://github.com/plugdata-team/plugdata.git
# volgens mij main anders krijg je de development versie
git checkout main
 branch 'main' set up to track 'origin/main'.
 Switched to a new branch 'main'
cd plugdata
mkdir build
cd !$

bv cmake, g++ etc.

Bash:
$ cmake ..
-- The CXX compiler identification is GNU 12.2.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring fftw3
-- Configuring libwebp
-- Configuring liblzma
CMake Error at CMakeLists.txt:49 (_message):
  Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
Call Stack (most recent call first):
  /usr/share/cmake-3.25/Modules/FindPackageHandleStandardArgs.cmake:230 (message)
  /usr/share/cmake-3.25/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.25/Modules/FindPkgConfig.cmake:99 (find_package_handle_standard_args)
  Libraries/JUCE/extras/Build/CMake/JUCEModuleSupport.cmake:356 (find_package)
  Libraries/JUCE/extras/Build/CMake/JUCEModuleSupport.cmake:605 (_juce_create_pkgconfig_target)
  Libraries/JUCE/extras/Build/CMake/JUCEModuleSupport.cmake:654 (juce_add_module)
  Libraries/JUCE/modules/CMakeLists.txt:24 (juce_add_modules)


-- Configuring incomplete, errors occurred!
See also "/*******/plugdata/build/CMakeFiles/CMakeOutput.log[/CODE]


De boel stop hier "Configuring liblzma" dus liblzma-dev moet waarschijnlijk geinstaleerd worden.


Bash:
sudo apt install liblzma-dev

Waarschijnlijk moeten er nog een hoop depencies worden geinstalleerd.
Soms staat er in de README.md welke development libs je moet instaleren.
in dit gevan zie ik het niet.

Bash:
$ cmake ..
-- Configuring fftw3
-- Configuring libwebp
-- Configuring liblzma
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Checking for module 'alsa'
--   Package 'alsa', required by 'virtual:world', not found
-- Checking for module 'freetype2'
--   Package 'freetype2', required by 'virtual:world', not found
-- Checking for module 'gl'
--   Package 'gl', required by 'virtual:world', not found
-- Checking for module 'libcurl'
--   Package 'libcurl', required by 'virtual:world', not found
-- Checking for modules 'webkit2gtk-4.0gtk+-x11-3.0'
--   Package 'webkit2gtk-4.0', required by 'virtual:world', not found
--   Package 'gtk+-x11-3.0', required by 'virtual:world', not found
-- Configuring juceaide
-- Building juceaide
CMake Error at CMakeLists.txt:49 (_message):
  Failed to build juceaide

Ondertussen nog pkg-config geinstalleerd en kun je zien dat de alsa, freetype2, gl, libcurl etc missen.

ff de ai vragen wat de developen packages zijn. (libasound2-dev libfreetype6-dev libgl1-mesa-dev libcurl4-openssl-dev)

etc etc..

Als er dan geen errors meer zijn en Cmake maakt de configuartie af kun je compilen.

Code:
cmake --build .

hier een one liner met alles wat ik heb geinstalleerd.

Code:
sudo apt update && sudo apt install -y cmake g++ liblzma-dev pkg-config libasound2-dev libfreetype6-dev libgl1-mesa-dev libcurl4-openssl-dev libweb webkit2gtk-4.0 webkit2gtk-4.0-dev
 
Laatst gewijzigd:
Dat is weer een mooi voorbeeld van wat er op GitHub heel vaak gebeurt: je rolt al doende van het ene probleem in het andere. En als je helemaal pech hebt krijg je uiteindelijk zelfs problemen met reeds geïnstalleerde software die eerder nog wel goed werkte maar nu door alle veranderingen aan de je computer ineens begint te haperen. Ik kan het 't beste nu maar laten hoe het is, het lijkt nu immers te werken. If it ain't broke, don't fix it!
 
ja daarom kun je beter de bin packages gebruiken.
Tenzij je het leuk vind om te leren.

Ik probeer te laten zijn wat die problemen zijn, en hoe je die oplost.
 
Dat is weer een mooi voorbeeld van wat er op GitHub heel vaak gebeurt: je rolt al doende van het ene probleem in het andere. En als je helemaal pech hebt krijg je uiteindelijk zelfs problemen met reeds geïnstalleerde software die eerder nog wel goed werkte maar nu door alle veranderingen aan de je computer ineens begint te haperen. Ik kan het 't beste nu maar laten hoe het is, het lijkt nu immers te werken. If it ain't broke, don't fix it!

Zal me maar van commentaar onthouden dat dit anno 2025 het geval is... :bekdicht:
 
Moet zeggen PlugData ziet er mooi uit.
Wel echt jammer dat je niet je eigen externals in de vst kan gebruiken.
Want dat is precies wat ik wilde gaan doen.

Ja software compilen .. tja.

Dit staat er dan ook op de PureData site:

1758873068018.png


Ik ben een (.deb) debian 13 package aan het maken.
En kom dan ook precies op v0.9.2 uit dezelfde versie kun je bij de releases downloaden.
Wellicht ga ik proberen mijn eerste package aan de officieele debian repo toe te voegen.

1758873280535.png
 
@Disharmonic Nu ben ik wel benieuwd wat dat commentaar dan is... GitHub is vooral voor software die nog in ontwikkeling is. In de Linux Mint repositories zit de uitontwikkelde software die (in principe) direct na installatie werkt. Voor de basiszaken heb je daar al genoeg aan. Maar ja - een mens wil soms wat meer...
 
Laat maar weten als je het geprobeerd hebt dan kan ik hier kijken op PlugData beschikbaar komt.
 
GitHub is vooral voor software die nog in ontwikkeling is.

Dan nog is het wat raar dat er geen voorziening is om zulke software te kunnen proberen, zonder dat je hele systeem gevaar loopt dat het niet meer werkt. Het moet toch niet zo heel moeilijk zijn een soort sandbox te ontwikkelen hiervoor. Anno 2025.
 
Dat bestaat al lang zoals bv docker.
Anyhow dat is hier niet van toepassing.
Je kunt van github in de release sectie de laatste versie downloaded.
Kwestie van uitpakken en ./plugdata draaien.

Ja github is voor software development.
Git zelf is een tool die door het linux team is gemaakt voor development van de linux kernel.
 
Voor een leek is er heel lastig wijs uit te worden hoe GitHub werkt en wat welke bestanden voorstellen. Hopelijk komt PlugData uiteindelijk ook in de repositories wat verreweg de eenvoudigste oplossing is als je het programma ook voor "gewone" Linux-gebruikers beschikbaar wilt maken.
 
Back
Top