Working with source code

🧩 Hoofdstuk 13.1: Werken met Broncode in Linux

Linux biedt krachtige tools om broncode te downloaden, uit te pakken, te compileren en te installeren. Dit hoofdstuk behandelt de basis van deze processen.

────────────────────────────────────────────
πŸ“₯ 1. Broncode downloaden
────────────────────────────────────────────

Broncode wordt vaak verspreid via het internet. Hiervoor worden command-line tools zoals wget en curl gebruikt.

πŸ”Ή wget – Eenvoudige downloader via FTP, HTTP of HTTPS.
πŸ”Ή curl – Ondersteunt meer protocollen zoals SFTP, SCP, LDAP.

πŸ“Œ Opmerking:
- wget is eenvoudiger.
- curl is veelzijdiger en biedt meer opties.

────────────────────────────────────────────
πŸ—ƒοΈ 2. Broncodebundeling met tar
────────────────────────────────────────────

Broncode wordt vaak verpakt in tar-archieven om distributie te vergemakkelijken. Hiermee blijven bestandsrechten behouden.

πŸ“‚ Veelgebruikte opties:
- Archief maken: -cvf
- Inhoud tonen: -tvf
- Archief uitpakken: -xvf

πŸ’‘ Comprimeermethoden:
- gzip (.gz): Snel, matige compressie.
- bzip2 (.bz2): Betere compressie, iets trager.
- xz (.xz): Beste compressie, maar langzaam.
- compress (.Z): Oude Unix-methode.

πŸ›  Voorbeelden:
- Een map inpakken in een tar.gz-bestand.
- Een gecomprimeerd tar-bestand uitpakken.

────────────────────────────────────────────
βš™οΈ 3. Broncode compileren
────────────────────────────────────────────

Na het uitpakken moet broncode worden gecompileerd. Hiervoor zijn tools nodig zoals:

πŸ”Ή gcc (GNU Compiler Collection):
Ondersteunt talen zoals C, C++, Java, Go.

πŸ’‘ Bij gebruik van gcc:
- -o specificeert de naam van het uitvoerbestand.
- Zonder deze optie heet het bestand standaard β€œa.out”.

πŸ”Ή make – Voor complexe projecten:
Maakt gebruik van een Makefile om compilatie te automatiseren.

πŸ“¦ Typische stappen:
- configure: Past de Makefile aan je systeem aan.
- make: Compileert de code.
- make install: Installeert de software (meestal met beheerdersrechten).

────────────────────────────────────────────
πŸ” 4. Controle van bibliotheken
────────────────────────────────────────────

Sommige programma’s vereisen externe bibliotheken.

πŸ”Ή ldd toont welke bibliotheken een programma nodig heeft.

πŸ“Œ Als er een bibliotheek ontbreekt:
Installeer deze via een pakketbeheerder zoals apt, dnf of yum, afhankelijk van je distributie.