#Klooienmetcomputers

De geany IDE

Arnout van Kempen over rommelen in een digitale wereld.

De geany IDE wordt het centrale werkpaard van waaruit geprogrammeerd kan worden op de Pi. Ik heb nog gekeken naar de IDE Code::Blocks, want die smoelt net iets mooier, maar ik kies toch voor geany. Gebruikers zijn daar kennelijk meer tevreden over, dus waarom niet.

Ik liep er al meteen tegenaan dat C een compiler-taal is en geen interpreter, zoals Python. Ik probeerde het standaard programmaatje waar alle leerboeken van alle talen mee beginnen: Hello World!

Dat wordt in C zoiets als

#include<stdio.h>

Void main()

{

     printf("Hello World!");

     return;

}

Na opslaan, de Build opdracht, en Run, zie je dat het programma werkt. En in je home-directory staan nu de bestanden hello.c, hello.o en hello. Die laatste is de executable en die werkt niet. Het Raspberry Pi-forum is dan al snel de uitkomst. Executables moeten in Linux, overigens net als in MS-DOS vroeger, ofwel aangeroepen worden inclusief hun locatie, ofwel in een directory staan die in de PATH-variabele van Linux staat. Dus je kan het programma niet starten door simpel hello te typen, je moet ofwel ./hello typen, ofwel hello verplaatsen naar bijvoorbeeld /usr/local/bin

Nu dat is opgelost, ga ik eerst geany maar eens optuigen. Een van de aardigheden van deze IDE is namelijk dat er een behoorlijk forse hoeveelheid plugins voor te krijgen is. Dat werkt vrij simpel.

In de terminal zou apt-get install geany-plugins genoeg moeten zijn. Dat was het dan helaas niet, ik kreeg een melding over onjuiste permissions. Daar is een simpel paardenmiddeltje voor, dus met sudo apt-get install geany-plugins was het alsnog snel gedaan. Vervolgens kan je in de pluginmanager in het Tools-menu van geany kiezen welke je aan of uit wilt zetten. En als je wilt weten welke handig is: kijk op plugins.geany.org

Mijn advies is: zet alleen die plugins aan waarvan je denkt te snappen wat ze doen, en waarvan je denkt dat het nuttig is. Als je later denkt "waarom kan dit of dat nou niet???", dan is de kans groot dat dat wel kan, en dat je gewoon nog een plugin aan moet zetten.

Arnout van Kempen di CCO CISA is directeur compliance & risk bij aaff, de fusieorganisatie van Alfa en ABAB. Hij schrijft op persoonlijke titel.

Gerelateerd

1 reactie

Ron Heinen

Citaat: "...Ik liep er al meteen tegenaan dat C een compiler-taal is ...".

De taal C is een krachtige taal waarin bijvoorbeeld besturingssystemen zoals Unix en Linux geschreven zijn. In de taal C zijn in principe alle constructies mogelijk welke in machinetaal in assembler mogelijk zijn.

Een aardig voorbeeld hiervan is Ghidra, zie https://ghidra-sre.org/

Met dit gratis open-source tool van de NSA kun je in principe elke executable welke geschreven is in elke computer taal reverse compileren naar de source in C.

Deze C source kun je dan bijvoorbeeld gebruiken om te analyseren hoe deze executable werkt.

Dit is bijvoorbeeld belangrijk bij de analyse van de werking van malware zoals ransomware.

Reageren op een artikel kan tot drie maanden na plaatsing. Reageren op dit artikel is daarom niet meer mogelijk.

Aanmelden nieuwsbrief

Ontvang elke werkdag (maandag t/m vrijdag) de laatste nieuwsberichten, opinies en artikelen in uw mailbox.

Bent u NBA-lid? Dan kunt u zich ook aanmelden via uw ledenprofiel op MijnNBA.nl.