Mavericks et les outils MacPorts
Bienvenue les amis !
Suite au passage sous Mavericks dans la semaine ( depuis la sortie en faite ), j’ai rencontré des difficultées lors de l’utilisation de MacPorts ( installation principalement ).
Ayant trouvé une solution à mon problème, je decide de partager cette connaissance dans cet article !
Mise à jour de XCode
Après l’installation ( ou MaJ ) de Mavericks, vous pouvez voir que XCode est en version 4.6.
Il vous sera donc nécessaire d’ouvrir votre « App Store », de rechercher à nouveau XCode et d’en faire l’installation ( 2,09Go me semble t-il ).
Comme vous avez vraiment une nouvelle version neuve de XCode, il vous faudra réinstaller les outils de la ligne de commande :
sudo xcode-select --install
Dès que c’est effectué, vous serez à jour avec XCode !
Mise à jour de MacPorts
La mise à jour du dépôt ne retourne pas de problème, elle s’effectue donc comme d’habitude :
[Djerfy@djerfy:~]-[25/10-12:24]$ sudo port selfupdate Password: ---> Updating MacPorts base sources using rsync MacPorts base version 2.2.0 installed, MacPorts base version 2.2.0 downloaded. ---> Updating the ports tree ---> MacPorts base is already the latest version
The ports tree has been updated. To upgrade your installed ports, you should run port upgrade outdated
Jusqu’ici, pas de problème, nous restons dans la version 2.2.0 de MacPorts !
D’après le site officiel, c’est toujours la version en date : http://guide.macports.org/#using.port.selfupdate
Vous pouvez également voir que le package de MacPorts pour Mavericks n’est pas disponible.
Passons maintenant à la mise à jour des outils avec le « upgrade outdated », mais nous arrivons très vite à une erreur :
[Djerfy@djerfy:~]-[25/10-12:26]$ sudo port upgrade outdated ---> Extracting expat Error: org.macports.extract for port expat returned: command execution failed Please see the log file for port expat for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_expat/expat/main.log Error: Unable to upgrade port: 1 To report a bug, follow the instructions in the guide: http://guide.macports.org/#project.tickets
En activant le mode de débug ( l’option -d ), nous comprennons très rapidement pourquoi cela ne fonctionne pas :
sh: /usr/bin/gnutar: No such file or directory gzip: error writing to output: Broken pipe gzip: /opt/local/var/macports/distfiles/expat/expat-2.1.0.tar.gz: uncompress failed
Comme vous pouvez facilement le voir, le binaire « gnutar » n’est plus trouvable, j’ai donc utilisé un lien vers le « tar » de cette manière :
sudo ln -s /usr/bin/tar /usr/bin/gnutar
Vous pouvez ensuite relancer votre commande pour voir que tout se déroule correctement !
[Djerfy@djerfy:~]-[25/10-12:33]$ sudo port upgrade outdated ---> Extracting expat ---> Configuring expat ---> Building expat ---> Staging expat into destroot ---> Unable to uninstall expat @2.1.0_0, the following ports depend on it: ---> gettext @0.18.2.1_0 ---> apr-util @1.5.1_0 ---> neon @0.29.6_2 ---> subversion @1.7.10_1 ---> fontconfig @2.10.93_0 ---> cairo @1.12.14_0+x11 ---> Xft2 @2.3.1_0 ---> gettext @0.18.3_0 ...... ......
Ré-installation de MacPorts
C’est une solution qui peut être envisager dans le cas ou vous souhaitez repartir sur une base propre, je vous la recommande dans le cas ou vous êtes partie sur une base propre de Mavericks.
Pour Mavericks, vous allez devoir faire l’installation directement depuis les sources ( donc compilation ), et je vous recommande de suivre ces deux guides :
Conslusion
Lors de votre « port upgrade outdated », cela mettra tout à jour puisque vous avez changer de « plateform » ( depuis le passage sous Mavericks ) et cela est tout à fait normal. Cela même si les versions ne changent pas. C’est donc un peu comme si vous ré-installé MacPorts au final.
C’est après plus de 5 heures que j’ai eu une erreur d’installation d’une librairie… Toujours pas de solution trouvé après quelques minutes ( toujours pareil, le binaire qui n’éxiste plus …. ).
Ne perdez donc pas votre temps à faire des réparations pour MacPorts, repartez sur une installation propre !
Pour ma part, j’ai opté pour la compilation en utilisant le SVN !
Je vous recommande l’utilisation des commentaires ci-dessous en cas de besoin.
[alert type= »info » close= »false » align= »right »] INFORMATIONS SUPPLEMENTAIRES
Dans le cas ou vous rencontrez des problèmes sur la compilation avec GCC, il est inéressant de lire cet article : http://www.ficksworkshop.com/blog/14-coding/65-installing-gcc-on-mac
Avec cette méthode, cela vous permettra de sélectionner la version de GCC que vous avez besoin ( gcc42 / gcc49 ).
Un grand merci à Nicoco Pops Gourmand-croquant pour la trouvaille !
[/alert]
Mise à jour le 20/11/2013 ( 21H10 ) : Ajout de la note sur la sélection de GCC