Att använda skriptet kdesrc-build

När inställningsdata är upprättad, är du redo att köra skriptet. Även om du fortfarande har en del finjustering eller annat som du vill läsa, är det en god idé att åtminstone läsa in KDE-projektets metadata.

Läsa in projektmetadata

Logga in till användaren som du använder för att kompilera KDE:s programvara i ett terminalfönster, och kör skriptet:

% kdesrc-build --metadata-only

Kommandot ställer in källkodskatalogen och ansluter till KDE:s Git-arkiv för att ladda ner databasen med KDE:s git-arkiv, och databasen med metadata över beroenden, utan att göra några ytterligare ändringar. Det är användbart att göra det separat, eftersom metadata är användbar för andra kommandon i kdesrc-build.

Förhandsgranska vad som kommer att hända när kdesrc-build kör

När projektets metadata är installerad är det möjligt att granska vad kdesrc-build kommer att göra när det startas. Det kan åstadkommas med kommandoradsväljaren --pretend.

% ./kdesrc-build --pretend

Du ska se ett meddelande som talar om att några paket har byggts med lyckat resultat (även om ingenting faktiskt byggdes). Om inga väsentliga problem visas, kan du fortsätta att verkligen köra skriptet.

% kdesrc-build

Kommandot laddar ner lämplig källkod, bygger och installerar varje modul i tur och ordning. Efteråt ska du se utmatning som liknar den i Exempel 2.2, ”Exempel på utmatning från en kdesrc-build körning”.

Exempel 2.2. Exempel på utmatning från en kdesrc-build körning

% kdesrc-build
Updating kde-build-metadata (to branch master)
Updating sysadmin-repo-metadata (to branch master)

Building libdbusmenu-qt (1/200)
        No changes to libdbusmenu-qt source, proceeding to build.
        Compiling... succeeded (after 0 seconds)
        Installing.. succeeded (after 0 seconds)

Building taglib (2/200)
        Updating taglib (to branch master)
        Source update complete for taglib: 68 files affected.
        Compiling... succeeded (after 0 seconds)
        Installing.. succeeded (after 0 seconds)

Building extra-cmake-modules from <module-set at line 32> (3/200)
        Updating extra-cmake-modules (to branch master)
        Source update complete for extra-cmake-modules: 2 files affected.
        Compiling... succeeded (after 0 seconds)
        Installing.. succeeded (after 0 seconds)

        ...

Building kdevelop from kdev (200/200)
        Updating kdevelop (to branch master)
        Source update complete for kdevelop: 29 files affected.
        Compiling... succeeded (after 1 minute, and 34 seconds)
        Installing.. succeeded (after 2 seconds)

<<<  PACKAGES SUCCESSFULLY BUILT  >>>
Built 200 modules

Your logs are saved in /home/kde-src/kdesrc/log/2018-01-20-07

Lösa byggfel

Beroende på hur många moduler du laddar ner, är det möjligt att kdesrc-build inte lyckas första gången du kompilerar KDE:s programvara. Ge inte upp hoppet!

kdesrc-build loggar utmatningen från varje kommando som körs. Normalt lagras loggfilerna i ~/kdesrc/log. För att se vad som orsakade ett fel för en modul vid det senaste kdesrc-build-kommandot, är det oftast tillräckligt att titta i ~/kdesrc/log/latest/modulnamn/error.log.

Tips

Det kanske enklaste sättet att ta reda på vilka fel som gör att bygget av en modul misslyckas är att söka bakåt efter ordet error från slutet av filen med en sökning som inte är skiftlägeskänslig. När det hittats, rulla uppåt för att vara säker på att det inte finns några andra felmeddelanden i närheten. Det första felmeddelandet i en grupp är ofta det bakomliggande problemet.

I filen ser du felet som orsakade att byggprocessen misslyckades för modulen. Om det står (längst ner) i filen att vissa paket saknas, försök att installera paketet (inklusive eventuella lämpliga -dev paket) innan du försöker bygga modulen igen. Försäkra dig om att skicka med väljaren --reconfigure när kdesrc-build körs igen, så att kdesrc-build gör att modulen letar efter de saknade paketen igen.

Eller om felet verkar vara ett byggfel (som ett syntaxfel, incorrect prototype, unknown type eller likande) är det nog ett fel i KDE:s källkod, som förhoppningsvis löses inom några dagar. Om det inte har lösts inom den tiden, skicka gärna ett brev till e-postlistan (prenumeration kan krävas först) för att rapportera byggfelet.

Du hittar fler vanliga exempel på saker som kan gå fel och deras lösningar, samt allmänna tips och strategier för att bygga KDE:s programvara i Build from Source.

Å andra sidan, under förutsättning att allt gick bra, ska en ny KDE-version vara installerad på datorn, och nu är det helt enkelt bara en fråga om att köra den, vilket beskrivs härnäst i ”Ställa in miljön för att köra ditt KDE Plasma™-skrivbord”.

Notera

För mer information om loggningssystemet i kdesrc-build, se ”Byggloggning i kdesrc-build.