dimanche 25 avril 2021

Après une mise à jour ou une nouvelle installation de MacOS

Bonjour à tous, 

j'ai remarqué après chaque mise à jour de mon système d'exploitation macOS que des paquets sont toujours cassés de sorte que certains programmes ne marchent pas. 
A chaque fois c'est la même galère et je me mets à fouiller internet pour savoir pourquoi ce paquet ne marche pas, pourquoi celui-ci est introuvable etc... 
Je me suis résolu mettre ici le nécessaire à faire pour être au top les prochaines fois. 

Pour ce qui est des nouvelles installations, il faut juste faire les configurations idoines pour être OK. Allons y: 
  • Variables d'environnement: Le PATH Dépuis Catalina, le shell par defaut sous macOS est zsh et par conséquent les fichiers lus par défaut sont .zshrc , .zprofile et .zsh_history (pour l'historique des commandes). Alors nos variables d'environnement seront à mettre dans .zprofile (pour l'utilisateur courrant) et .zshrc pour tous les utilisateurs. Pour y parvenir, la commande
export PATH=/chemin/repertoire/du/program/bin:$PATH ajoutera le programme concerné dans la variable globale $PATH. Mais celle-ci sera ignorée au redemarrage. Pour rendre cela persistant, il faut écrire cette commande dans le fichier .zprofile ou .zshrc .
 Exemple: 

On l'enregistre et on ferme.
Ainsi le SDK de Java sera disponible pour tous les programmes devant l'utilisé. Il en sera de même avec python, ... et les autres programme que nous avons installé manuellement talque sublime Text, Maven, npm ... :
    •     Sublime textexport PATH="/Applications/Sublime Text.app/Contents/SharedSupport/bin:$PATH"
    • Maven: export PATH=/opt/apache-maven-3.6.3/bin:$PATH
    • Python export PATH=/Users/xbemous/Library/Python/3.8/bin:$PATH
    • ...  
  • Xcode command line Tool: - Gestionnaire de paquet Homebrew:
Le constat c'est qu'après la mise à jour de l'Os, certains programmes ne marchent plus ou du moins ne sont pas retrouvés, notamment Python et si Homebrew est installé, certains des paquets installés par Homebrew sont cassés et donc nécessitent une mise à jour. Pour le savoir il faut faire tapez la commande 
  ~ % brew doctor

Please note that these warnings are just used to help the Homebrew maintainers

with debugging if you file an issue. If everything you use Homebrew for is

working fine: please don't worry or file an issue; just ignore this. Thanks!


Warning: Unknown support status


Warning: No developer tools installed.

Install the Command Line Tools:

  xcode-select --install 

Warning: Homebrew's "sbin" was not found in your PATH but you have installed

formulae that put executables in /usr/local/sbin.

Consider setting your PATH for example like so:

  echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.zshrc

 

 Le résultat indique bel et bien "Install the Command Line Tools". Et c'est le cas après chaque mise à jour du Système d'Exploitation. Le 3ème Warning indique que ne trouve pas le 'sbin' dans la variable d'environnement PATH et qu'il faut ajouter son chemin dans le PATH en tapant la commande echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.zshrc . Or sbin est bel et bien dans le PATH. Même si l'on exécute la commande, la question nous sera toujours posée. Pour résoudre ce problème, Il faut donc  toujour réinstaller Command Line Tools après chaque mise à jour du système d'exploitation. 

Pour ce faire, l'on devra taper la commande 

 ~ % xcode-select --install

 xcode-select: note: install requested for command line developer toolsxcode-select constat c'est qu'après la mise à jour de l'Os, certains programmes ne marchent plus ou du moins ne sont pas retro


On clique sur Install puis

 


Quelques minutes minutes plus tard l'installation est terminée.

Pour s'assurer que tout est ok, il faut vérifier la version de gcc installée avec gcc --version :

~ % gcc --version

Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1

Apple clang version 12.0.0 (clang-1200.0.32.29)

Target: x86_64-apple-darwin20.3.0

Thread model: posix

InstalledDir: /Library/Developer/CommandLineTools/usr/bin 

Notre paquet est bel et bien installé et la commande brew doctor n'indiquera plus d'erreur l'on pourra faire ~ % brew update puis ~ % brew upgrade  pour mettre à jour les paquets déjà installés avec  Homebrew .

Et le tour est joué.

En un mot, après une mise à jour (ou une nouvelle installation) de MacOS, il faut :
  • (ré)installer Developper Command Line Tools: xcode-select --install
  • Vérifier que rien n'est cassé dans Homebrew (s'il est installé): brew doctor
  • Mettre à jour Homebrew:  brew update && brew upgrade
J'espère que ça aidera plus d'un.