KGeoTag
This is about KGeoTag, the stand-alone KDE photo geotagging program.
Building KGeoTag from sources
Getting the sources
When working on KGeoTag, you may want to checkout the git sources. KGeoTag's repository can be found on KDE Invent. To clone the sources, simply run
git clone https://invent.kde.org/graphics/kgeotag.git
or, with write access (if you already have a KDE Developer account):
git clone [email protected]:graphics/kgeotag.git
Building the sources
The build process is quite straightforward. It's a "normal" cmake build. So this essentially strips down to (of course inside the source directory):
mkdir build cd build cmake .. make
You may want to use the Ninja build system, in this case you have to use:
mkdir build cd build cmake -G Ninja .. ninja
A common approach is to start as many concurrent build processes as you have CPUs. So for a 4-core CPU, you may want to run
make -j4
or
ninja -j4
respectively.
A good recommendation for development is to create a "Debug" build. This way, you get better (or useable at all) backtraces in case of a crash if you run KGeoTag with a debugger (like gdb), and you get extra warnings whilst compiling. To enable a Debug build, invoke cmake like so:
cmake -DCMAKE_BUILD_TYPE=Debug ..
Running the compiled sources
You don't have to install KGeoTag (neither system-wide, nor locally) to be able to run it. The executable file will end up at bin/kgeotag
inside your build directory.
There's only one thing to take care of: If you don't have a system-wide installation of KGeoTag, the program can't find the KXMLGui menu definition that resides in kgeotagui.rc
. Simply link it to ~/.local/share/kxmlgui5/kgeotag/kgeotagui.rc
, and you're done (also, changes you may want to do to this file will be considered immediately).
Installing the compiled sources
This is as simple as a
make install
or
ninja install
respectively. For this case, you have to be root, so either be root or prepend a sudo
on distributions that use this concept.
Alternatively, you can define a installation target inside a local prefix to keep all inside your home directory. You have to tell cmake about the changed prefix, e. g. by running
cmake -DCMAKE_INSTALL_PREFIX=~/.local
This is also possible after having already built the sources.