<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.proggen.org/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.proggen.org/feed.php">
        <title>proggen.org build:cmake</title>
        <description></description>
        <link>https://www.proggen.org/</link>
        <image rdf:resource="https://www.proggen.org/lib/tpl/proggenX/images/favicon.ico" />
       <dc:date>2026-04-29T01:01:46+0200</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:configure&amp;rev=1663869537"/>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:create-project&amp;rev=1663869537"/>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:installation&amp;rev=1663869537"/>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:libs-includes&amp;rev=1663869537"/>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:qt-moc&amp;rev=1663869537"/>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:set-variables&amp;rev=1663869537"/>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:sidebar&amp;rev=1663869537"/>
                <rdf:li rdf:resource="https://www.proggen.org/doku.php?id=build:cmake:start&amp;rev=1663869537"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.proggen.org/lib/tpl/proggenX/images/favicon.ico">
        <title>proggen.org</title>
        <link>https://www.proggen.org/</link>
        <url>https://www.proggen.org/lib/tpl/proggenX/images/favicon.ico</url>
    </image>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:configure&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Das Projekt konfigurieren</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:configure&amp;rev=1663869537</link>
        <description>Das Projekt konfigurieren

Viele Projekte haben die Möglichkeit beim Bauen bestimmte Teilaspekte aus oder anzuschalten. Beispielweise könnten wir Module haben, die wir einzeln ein oder ausschalten können wollen um an Speicherplatz zu sparen oder weil wir bestimmte Abhängigkeiten nicht haben, die diese Module benötigen oder wir brauchen einfach die Funktionalität nicht.</description>
    </item>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:create-project&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ein Projekt anlegen</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:create-project&amp;rev=1663869537</link>
        <description>Ein Projekt anlegen

Um CMake zu ermöglichen unser Projekt zu bauen müssen wir beschreiben wie unser Projekt übersetzt werden muss. Dazu erstellen wir eine Datei mit dem Namen CMakeLists.txt und beschreiben in einer für CMake verständlichen Skriptsprache, alle benötigten Aspekte unseres Programms. Für ein einfache Hello-World Programm (einzige Quelldatei ist main.c) kann diese Datei zum Beispiel so ausschauen:</description>
    </item>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:installation&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>CMake Installation</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:installation&amp;rev=1663869537</link>
        <description>CMake Installation

Debian/Ubuntu

Das Binärpaket lässt sich wie unter Debian üblich mit apt-get oder aptitude installieren
apt install cmake
Arch Linux

Das Paket auf Arch Linux heißt cmake:
pacman -Syu cmake
Mac

Zunächst muss MacPorts installiert werden. Anschließend öffnet man ein Terminal (Programme</description>
    </item>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:libs-includes&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Bibliotheken finden und bauen</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:libs-includes&amp;rev=1663869537</link>
        <description>Bibliotheken finden und bauen

Ein wichtiger Punkt im Umgang mit C und C++ Projekten aber auch in anderen Sprachen ist das finden von Bibliotheken und deren Header-Dateien im System. So könnten wir bspw. eine Bibliothek installier haben, gegen die wir unser Programm nun linken möchten. Diese Bibliothek im System zu finden gelingt in normalen GNU-Makefiles oftmals mit</description>
    </item>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:qt-moc&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Qt Projekte bauen</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:qt-moc&amp;rev=1663869537</link>
        <description>Qt Projekte bauen

FIXME -&gt; Snippet aus &lt;http://www.proggen.org/forum/viewtopic.php?f=33&amp;t=4458&gt;


# In der Haupt CMakeLists.txt (Top-Level)
FIND_PACKAGE(Qt4 REQUIRED)

# In der CMakeLists.txt fuers GUI/QT
INCLUDE(${QT_USE_FILE})

FILE(GLOB C_FILES   &quot;*.cpp&quot;)
FILE(GLOB H_FILES &quot;../../include/foo/*.h&quot;)

# [..]

QT4_WRAP_CPP(HEADER_MOC ${H_FILES})

# [..]

ADD_LIBRARY(foo SHARED ${C_FILES} ${HEADER_MOC})
TARGET_LINK_LIBRARIES(foo ${QT_LIBRARIES})</description>
    </item>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:set-variables&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Variablen setzen und Quelldateien finden</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:set-variables&amp;rev=1663869537</link>
        <description>Variablen setzen und Quelldateien finden

Bislang war unser CMake-Projekt sehr klein und wenig hilfreich. Spannender wird CMake aber vor allem beim Bauen gegen externe Bibliotheken, wenn Projekte konfiguriert werden können oder wenn die Ordnerstruktur komplizierter wird. Normale GNU-Makefiles arbeiten mit eingebauten String- und Dateifunktionen oder mit Shell-Zugriff, CMake hat eigene eingebaute Funktionen um Dateien in Ordnern zu finden. Anders als GNU-Makefiles kann CMake selbst Bibliotheken i…</description>
    </item>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:sidebar&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Community</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:sidebar&amp;rev=1663869537</link>
        <description>Community

	*  Forum
	*  Links
	*  FAQs
	*  Autorenportal
	*  User-Websites
	*  Projekte

Buildsysteme

	*  Makefiles
	*  CMake

CMake

Einstieg

	*  Einführung
	*  CMake Installation

Projekte

	*  Projekt anlegen
	*  Qt Projekte bauen</description>
    </item>
    <item rdf:about="https://www.proggen.org/doku.php?id=build:cmake:start&amp;rev=1663869537">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:58:57+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>CMake</title>
        <link>https://www.proggen.org/doku.php?id=build:cmake:start&amp;rev=1663869537</link>
        <description>CMake

CMake ist ein freies, plattformunabhängiges Programm das mit Hilfe von speziellen Konfigurations- bzw. Skriptdateien Makefiles und Projekte für verschiedene Entwicklungsumgebungen und Plattformen erstellt. So kann man mit nur einem Buildsystem zum Beispiel für Linux Makefiles und für Windows Visual Studio Projekte erstellen, um somit sehr einfach plattformübergreifend zu Programmieren. Unterstützt werden auch andere Entwicklungsumgebungen wie zB. Eclipse oder Code::Blocks.</description>
    </item>
</rdf:RDF>
