I am trying to build kdenlive for windows 11 with craft but “craft kdenlive” fails after a few seconds with: Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
Does anyone know a solution for this? perhaps I need to install this?
I am trying to build kdenlive for windows 11 with craft but “craft kdenlive” fails after a few seconds with: Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
Does anyone know a solution for this? perhaps I need to install this?
Do you followed these steps: dev-docs/build.md · master · Multimedia / Kdenlive · GitLab
Here are the detailed steps to install craft: Get Involved/development/Windows - KDE Community Wiki
specially: On Windows choose MinGW as compiler!
I already followed those very steps and selected MinGW, I can try to follow them again but I went through them a few times with the same result. Are administrator rights a must? because I did everything without and it all seemed to work ok until the build error. It looks like some kind of utility is missing but I’m not sure how to resolve it.
Ok I was able to build with craft on Linux and for now I can live with that (though if you happen to know the solution to the problem on windows I would be very grateful, as my linux laptop is a potato. If I ever find out on my own I will post the solution here)
A related question would be how do I change the codebase and rebuild when working with craft? Shall I point craft to my own fork of kdenlive? and if so how?
I installed Kdenlive by Craft under Win10 only. Yes, it could be that you need administrator right to install it.
I recommend to use Visual Studio Code (VSC) or a similar IDE.
Once you downloaded the source code by git you have to branch Kdenlive. Make a branch like work/myChanges
. The work
is important that we can comment and commit in Gitlab.
Change to your new branch in VSC. Make the changes and then: craft -i --target=master --options kdenlive.branch=work/myChanges Kdenlive
. Kdenlive should be updated in C:\CraftRoot\bin
Ah I didn’t realize I could branch the main repo, I made a fork and have a merge request ready on gitlab, but yeah I’ll try that both on linux and on windows
So actually indeed I can’t push my branch to the main project, so I’m still not sure what exactly I should do other than fork the project (as I did).
So far I’ve been editing the sources under CraftRoot/work, and then imported my changes into my fork and committed/pushed there.
Either way it still doesn’t work on windows due to missing packages. I tried running PS with admin rights, I even tried to craft other applications like kate and krita and they all fail on windows for various (different) reasons
Ok I was able to build on windows by installing pkg-config via chocolatey and exporting the path to its executable as PKG_CONFIG (praise ChatGPT).
Now I believe to let craft use gitlab you would need to make me member of the project so I can create and push branches, right?
I see your MR !663. I have assigned it to one of the developer. Please wait on his feedback. He will merge it.
sure no problem, thank you very much. Still though, if it were possible, I would like to become member, so that I don’t have to shuffle my changes between two different git checkouts/repos, but just point craft to my own branch.
As a solution to the main issue of this thread:
install pkg-config via chocolatey:
choco install pkgconfiglite
and then, under the [Environment] section in C:/CraftRoot/etc/CraftSettings.ini add the following:
PKG_CONFIG = "C:\ProgramData\chocolatey\bin\pkg-config.exe"
or wherever the package has been installed. pkgconfiglite.exe
might be available as a standalone binary, in which case using chocolatey is not necessary and the tool installation (and its path) can be decided freely
I am trying to pin down when a regression has occurred, is there a way I can craft specific commits from the master branch?
This does not sound like the proper solution. The idea of Craft is to contain all required dependencies, so the problem here is probably a missing dependency definition in a blueprint.
To fix this in a sustainable way: the question would be for which package the Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
issue appears: Kdenlive itself or a dependency? And then fix the related blueprint.
The quick alternative would be craft pkgconf
I recommend to read Building KDE software on Windows with Craft | Developer
You don’t need two separate ‘checkouts’, you just add as many remotes as you’d like to interact with to your one local working copy. Then you pull from the master (or whichever fork contains whatever you are testing or basing your current changes on) and push your own changes to your public fork.
This is what makes git so powerful for supporting projects with potentially thousands of contributors and is the normal way to work with it. Everyone only needs direct write privilege to the copies that they personally ‘own’.
When you think your changes are ready to mainline, submit a merge request and they’ll be pulled from your fork by whoever wants to test them and merged with the mainline when they pass review.
ok I’ll try harder. Any idea how I can skip building and running the tests when crafting kdenlive with craft --compile --install --qmerge kdenlive? I really takes ages every time…
I can’t speak for craft, and as I noted elsewhere, to me it seems more suited to creating release or self-contained images for others to use and test than to active development work - but for building and testing directly out of the the kdenlive tree I pass -DBUILD_TESTING=OFF
to cmake - and you may want to use some other non-default ‘dev build’ options too (for things like building with and not stripping debugging symbols).
If you’re building directly in tree, you can have, and configure separately, multiple build dirs, to make it trivial to have one for quick debug builds for intermediate testing, and one for ‘release’ builds that runs the test suite to use before actually committing your proposed changes.