User:Nmariusp: Difference between revisions

From KDE Community Wiki
No edit summary
 
(10 intermediate revisions by the same user not shown)
Line 3: Line 3:
=== How to install kde-builder fast ===
=== How to install kde-builder fast ===


Install kde-builder.
<pre>
<pre>
mkdir -p ~/kde/src
cd ~/kde/src
git clone https://invent.kde.org/sdk/kde-builder.git
cd kde-builder
# Make sure that you have Python >= 3.9.
# Install Python packages from your OS. E.g. on:
# Debian family of Linux OSes. E.g. Kubuntu 23.10, KDE neon User Edition:
sudo apt install python3-dbus python3-promise python3-yaml python3-setproctitle
# Fedora.
dnf install python3-dbus python3-promise python3-pyyaml python3-setproctitle
# FreeBSD 14.0
pkg install py39-promise py39-yaml py39-setproctitle
./kde-builder --initial-setup
mv ~/.config/kdesrc-buildrc .
# Edit the file ./kdesrc-buildrc as needed.
# Edit the file ./kdesrc-buildrc as needed.


Line 39: Line 24:


<pre>
<pre>
ls -la ~/Downloads # The downloaded file needs to hace the "executable" chmod bit set.
ls -la ~/Downloads # The downloaded file needs to have the "executable" chmod bit set.
chmod +x ~/Downloads/qt-unified-linux-x64-4.6.1-online.run
chmod +x ~/Downloads/qt-unified-linux-x64-4.6.1-online.run
~/Downloads/qt-unified-linux-x64-4.6.1-online.run
~/Downloads/qt-unified-linux-x64-4.6.1-online.run
Line 61: Line 46:
</pre>
</pre>


Make gpgme build:
Because we use <code>libname lib</code>, on the Linux OSes that use <code>usr/lib/x86_64-linux-gnu/</code> instead of <code>usr/lib/</code> some files are installed into 
<code>~/kde/usr/lib/x86_64-linux-gnu/</code>, some files are installed into <code>~/kde/usr/lib/</code>.
 
E.g. in <code>prefix.sh</code>, make sure to have both <code>~/kde/usr/lib/x86_64-linux-gnu/</code> and <code>~/kde/usr/lib/</code>. E.g.:


<pre>
<pre>
sudo su
export QT_PLUGIN_PATH=/home/username/kde/usr/lib/x86_64-linux-gnu/plugins:/home/username/kde/usr/lib/plugins:$QT_PLUGIN_PATH
mkdir -p /home/qt/work
export QML2_IMPORT_PATH=/home/username/kde/usr/lib/x86_64-linux-gnu/qml:/home/username/kde/usr/lib/qml:$QML2_IMPORT_PATH
chown -R username:username /home/qt/work
 
ln -s /home/username/Qt/6.6.0/gcc_64 /home/qt/work/install
export QT_QUICK_CONTROLS_STYLE_PATH=/home/username/kde/usr/lib/x86_64-linux-gnu/qml/QtQuick/Controls.2/:/home/username/kde/usr/lib/qml/QtQuick/Controls.2/:$QT_QUICK_CONTROLS_STYLE_PATH
ls -la /home/qt/work
</pre>
</pre>


== More topics ==
== More topics ==


== How to write the entire verbose STDOUT and STDERR of kdesrc-build to a file ==
=== How to write the entire verbose STDOUT and STDERR of kdesrc-build to a file ===


<pre>
<pre>
Line 84: Line 71:


If using <code>tee</code>, part of the output of kdesrc-build will not be written to file. E.g. the output of the <code>cmake</code> step, the final part of the <code>make -j</code> step, the final part of the <code>make install</code> step.
If using <code>tee</code>, part of the output of kdesrc-build will not be written to file. E.g. the output of the <code>cmake</code> step, the final part of the <code>make -j</code> step, the final part of the <code>make install</code> step.
[[User:Nmariusp/Qt_Creator|Qt Creator]]
[[User:Nmariusp/Clion|JetBrains CLion]]
[[User:Nmariusp/Start|How to start programming for KDE]]
[[User:Nmariusp/Easy|I know how to program using C++. Can I do a KDE MR in less than 2 hours?]]
[[User:Nmariusp/More|Advanced topics about how to start programming for KDE]]

Latest revision as of 08:29, 17 November 2024

How to install kde-builder

How to install kde-builder fast

Install kde-builder.

# Edit the file ./kdesrc-buildrc as needed.

# kde-builder is installed.
# Use ./kde-builder instead of ./kdesrc-build. The command lines are the same.

./kde-builder kconfig
./kde-builder kcalc
./kde-builder --run kcalc
# Run kcalc with the KDE theme that is used by your KDE Plasma desktop.
./kde-builder plasma-integration
./kde-builder --run kcalc
./kde-builder frameworks

Qt 6 installed using Qt online installer

The homepage of the Qt Framework is https://www.qt.io . Go to this web page, create an online account. https://www.qt.io/download-open-source > "Download the Qt Online Installer" > Linux > "Qt Online Installer for Linux (64-bit)" > download a file named e.g. qt-unified-linux-x64-4.6.1-online.run into the directory e.g. "~/Downloads".

ls -la ~/Downloads # The downloaded file needs to have the "executable" chmod bit set.
chmod +x ~/Downloads/qt-unified-linux-x64-4.6.1-online.run
~/Downloads/qt-unified-linux-x64-4.6.1-online.run

Login using your Qt online account. Next > check the checkbox "I have read and agree to the terms and conditions of using OpenSource Qt", check the checkbox "I'm an individual and do not use Qt for any company" > Next > Next > enable "Help us improve" > Next > Custom installation, notice that the install directory is "~/Qt" > Next. Install the latest version of Qt6 and the latest version of the Qt Creator integrated development environment (IDE). There are some Qt6 components that are not used by KDE and can be left out when installing Qt6 e.g. WebAssembly, Android, Sources, Qt Quick 3D, Qt 3D, "Quick: 3D Physics", "Qt debug Information Files".

In the KDE Plasma app launcher you now have the application "Qt Maintenance Tool".

Set up kde-builder from scratch as usual.

Edit the file kdesrc-buildrc to look like:

global
...
    qt-install-dir  ~/Qt/6.6.0/gcc_64 # Where to install Qt6 if kdesrc-build supplies it
    libname lib
...
end global

Because we use libname lib, on the Linux OSes that use usr/lib/x86_64-linux-gnu/ instead of usr/lib/ some files are installed into ~/kde/usr/lib/x86_64-linux-gnu/, some files are installed into ~/kde/usr/lib/.

E.g. in prefix.sh, make sure to have both ~/kde/usr/lib/x86_64-linux-gnu/ and ~/kde/usr/lib/. E.g.:

export QT_PLUGIN_PATH=/home/username/kde/usr/lib/x86_64-linux-gnu/plugins:/home/username/kde/usr/lib/plugins:$QT_PLUGIN_PATH
export QML2_IMPORT_PATH=/home/username/kde/usr/lib/x86_64-linux-gnu/qml:/home/username/kde/usr/lib/qml:$QML2_IMPORT_PATH

export QT_QUICK_CONTROLS_STYLE_PATH=/home/username/kde/usr/lib/x86_64-linux-gnu/qml/QtQuick/Controls.2/:/home/username/kde/usr/lib/qml/QtQuick/Controls.2/:$QT_QUICK_CONTROLS_STYLE_PATH

More topics

How to write the entire verbose STDOUT and STDERR of kdesrc-build to a file

script -eq -c "kdesrc-build kconfig --no-src --no-include-dependencies --refresh-build --debug" ~/a.txt ;  sed -i $'s/\033\[[0-9]\+m//g' ~/a.txt

The sed part removes the terminal ANSI color escape codes.

script -eq -c "command" ~/a.txt is better than command |& tee ~/a.txt because kdesrc-build behaves differently if it is run in a user interactive terminal session (isatty).

If using tee, part of the output of kdesrc-build will not be written to file. E.g. the output of the cmake step, the final part of the make -j step, the final part of the make install step.


Qt Creator

JetBrains CLion

How to start programming for KDE

I know how to program using C++. Can I do a KDE MR in less than 2 hours?

Advanced topics about how to start programming for KDE