Un compilateur peut en cacher un autre

En recompilant NuttX sur FreeBSD 13 pour une carte bluepill (STM32F103C8T6), j’ai eu une mauvaise surprise: même si le code se compile correctement, le binaire ne fonctionne pas une fois arrivé sur la cible.
La classique « laide qui clignote » fonctionne sans problème, mais des fonctions avancées (USB par exemple) ne fonctionnent pas du tout.
En fait, il faut utiliser le compilateur devel/gcc-arm-embedded au lieu de devel/arm-none-eabi-gcc.

Notez que ce compilateur s’installe dans le répertoire /usr/local/gcc-arm-embedded. Pour l’utiliser, il faut exporter la variable PATH comme suit (/bin/sh):

export PATH=$PATH:/usr/local/gcc-arm-embedded/bin

Exemple de configuration NuttX avec authentification sur la console via le port USB :
Je n’ai pas encore compris l’intérêt d’avoir deux compilateurs différents, mais je ne désespère pas d’avoir une réponse.

La source.
 
La capture de terminal est réalisée avec asciinema et convertie avec gifcast

Time Machine : restaurer les fichiers cachés

Time machine n’affiche pas les fichiers cachés (dotfiles) ce qui empêche leur restauration. Pour les afficher, il faut modifier un paramètre du Finder. Dans le terminal, taper la commande suivante:

defaults write com.apple.finder AppleShowAllFiles TRUE

Puis redémarrer le Finder

killall Finder

Après restauration, vous pouvez rétablir le paramètre initial:

defaults write com.apple.finder AppleShowAllFiles FALSE

Et redémarrez à nouveau le Finder

killall Finder

Ajout de greffons dans KiCad 5.x

De nombreux greffons (plugins) sont disponibles pour KiCad: une liste non-exhaustive est disponible sur Github.

Pour être utilisable, il suffit de les copier dans un dossier de son répertoire d’accueil ($HOME). Ce dossier dépend du système d’exploitation (Windows, macos ou Unix). Pour le connaitre, lancez pcbnew, ouvrez la console python dans outils->console de script et entrez ces deux lignes de code:

import pcbnew
print(pcbnew.GetWizardsSearchPaths())

Sur macos, ça donne le résultat suivant:

...
~/Library/Preferences/kicad/scripting
~/Library/Preferences/kicad/scripting/plugins

Et FreeBSD:

...
~/.config/kicad/scripting
~/.config/kicad/scripting/plugins

Exemple d’installation

Pour installer le greffon kicad-round-tracks depuis github, procédez comme suit :

mkdir -p ~/Library/Preferences/kicad/scripting/plugins
cd ~/Library/Preferences/kicad/scripting/plugins
git clone https://github.com/mitxela/kicad-round-tracks.git

Après l’installation d’un greffon, faites un rafraichissement dans Outils->Plugins externes... -> Rafraîchir Plugins.

Compilateur de scripts shells

j’ai découvert dernièrement shc qui est un compilateur de scripts. Il convertit différents types de scripts (sh, csh, ksh, bash ou perl) en un binaire exécutable. Il possède plusieurs options de chiffrement pour éviter de tracer le binaire. Il peut même générer des binaires avec une date d’expiration: utile pour gagner de l’argent grâce à vos talents de développeur 🙂.

Il est compatible avec la plupart des OS de type Unix (AIX, BSD, Linux, Solaris).
Cela peut être la solution lorsque des scripts contiennent des informations sensibles.

CentOS est mort, vive Rocky Linux

Comme chacun sait, IBM a racheté RedHAT et… CentOS n’est plus ().

Les distributions RedHat sont appréciées dans le monde professionnel pour leur stabilité et leur support.
CentOS est était un clone de RHEL (Redhat Enterprise Linux) expurgé des copyrights de l’éditeur. Cette distribution, qui avait l’avantage d’être gratuite, était sponsorisée par l’éditeur lui-même et bénéficiait des mises à jour de la version officielle.

A présent, CentOS est une version de type « rolling release ». Autrement dit, il n’y a plus de version LTS (Long Time Support). Ce type de distribution est malheureusement incompatible avec des environnements de production.

Heureusement, Gregory Kurtzer, l’un des fondateurs du projet a décidé de « forker » CentOS pour créer Rocky Linux. La version 8, clone de RHEL 8, est sortie le 21 Juin 2021. Longue vie à elle.