8 Sep
matte

matte il 8 September 2009 parla di Configurazioni, Mac

Upgrade a Snow Leopard

Oggi è arrivato in office Snow Leopard e abbiamo deciso di aggiornare i nostri iMac sperando di non incappare in qualche incompatibilità con i software che utilizziamo. Tutto è filato liscio (non abbiamo dovuto ripristinare backup) anche se ci sono stati alcuni inconvenienti. Per questo vi consiglio (a parte un backup dei file più importanti) di salvare i seguenti file che l’aggiornamento va a sovrascrivere, nel caso in cui abbiate avuto la necessità di cambiarli:

/etc/hosts
/etc/apache2/httpd.conf

Inoltre se utilizzate MacPorts per installare i pacchetti software (tipo ruby, mysql, tomcat) effettuate un backup su file del nome dei pacchetti installati con il comando:

port installed > myports.txt

Una volta effettuato l’aggiornamento non è stato più possibile lanciare il comando port, ottenendo il seguente errore:

    1 dlopen(/opt/local/share/macports/Tcl/pextlib1.0/Pextlib.dylib, 10): no suitable image found.  Did find:
    2   /opt/local/share/macports/Tcl/pextlib1.0/Pextlib.dylib: mach-o, but wrong architecture
    3     while executing
    4 "load /opt/local/share/macports/Tcl/pextlib1.0/Pextlib.dylib"
    5     ("package ifneeded Pextlib 1.0" script)
    6     invoked from within
    7 "package require Pextlib 1.0"
    8     (file "/opt/local/bin/port" line 40)

Per risolvere il problema su Snow Leopard scaricate ed installate http://distfiles.macports.org/MacPorts/MacPorts-1.8.0-10.6-SnowLeopard.dmg

Poi aggiornate il repositorio dei pacchetti con il comando

sudo port selfupdate

Per ricompilare tutti i pacchetti lanciate il comando:

sudo port upgrade --force installed

per aggiornare solamente quelli più vecchi:

sudo port upgrade outdated

A questo punto installate XCode dal DVD di Snow Leopard e controllate le gemme da reinstallare a 64 bit con lo script http://gist.github.com/178178.

Nel caso in cui abbiate dei problemi con la gemma ruby di mysql reinstallatela con il comando:

    1 sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config
    2 

Se ottenete il seguente errore:

    1 dyld: lazy symbol binding failed: Symbol not found: _mysql_init
    2   Referenced from: /Library/Ruby/Gems/1.8/gems/mysql-2.8.1/lib/mysql_api.bundle
    3   Expected in: flat namespace
    4 
    5 dyld: Symbol not found: _mysql_init
    6   Referenced from: /Library/Ruby/Gems/1.8/gems/mysql-2.8.1/lib/mysql_api.bundle
    7   Expected in: flat namespace

oppure:

    1 Status: 500 Internal Server Error
    2 uninitialized constant MysqlCompat::MysqlRes

e avete il mysql installato tramite port, ricompilatelo di nuovo a 64 bit con il comando:

sudo port upgrade mysql5

Se trovate altre complicazioni segnalatele pure nei commenti, grazie.

6 Commenti a “Upgrade a Snow Leopard”

  1. duccio il 11 September 2009 alle 16:06 dice:

    oh non legge il comando (alemeno su ie7) per reinstallare la gemma ruby di mysql! しあお

  2. matte il 11 September 2009 alle 17:56 dice:

    Ti pareva che non facesse… su safari e firefox funziona… meno male non c’è su Snow Leopard ie7! :-) ora simo da un occhio!

  3. yortz il 18 September 2009 alle 01:29 dice:

    Utili accorgimenti, ma nel “mio piccolo”, non ho avuto problemi di sorta con l’upgrade a sl con il file host - invece mi ha cancellato tutti i db mysql che fortunatamente erano backuppati - (thanks god!) ma ho dovuto ricompilare diverse gems per fare si che di nuovo merb non girasse come il traffico della uggiosa Milano!:)

  4. yortz il 18 September 2009 alle 01:30 dice:

    decisamente utile per chi non usa “solo” rails:)

    http://blog.costan.us/2009/07/rebuild-your-ruby-gems-if-you-update-to.html

  5. matte il 18 September 2009 alle 18:06 dice:

    Grazie per la segnalazione del link e per la puntualizzazione sui db mysql… Non mi ero accorto perché abbiamo un server debian su cui facciamo girare mysql in rete e non in locale.

  6. riccardo il 8 November 2009 alle 23:24 dice:

    Ho installato MySql 64 bit e relativa gemma 2.8.1: sudo env ARCHFLAGS=”-arch x8664″ gem install mysql — –with-mysql-config=/usr/local/mysql/bin/mysqlconfig
    Ma al comando: rake db:migrate l’errore è il fatidico (da giorni): rake aborted!
    uninitialized constant MysqlCompat::MysqlRes
    Ho sperimentato tutte le soluzioni che sono riuscito a trovare in rete senza cavarne nulla.
    Ho Rails 2.3.4 e Ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-darwin9.6.0].

Scrivi un commento