dijous, 30 de desembre del 2010

intltool i Expat: de rubber a l'infern

Com acostuma a passar sovint, l'aparentment fàcil (des)instal.lació de software a l'Snow Leopard, especialment si un usa MacPorts, esdevé un petit malson.
Enmig de la preparació de material per a un curs, m'he trobat amb que necessitava instal.lar rubber per poder compilar el material. Sí, sé que és complicar-se la vida i que amb unes quantes combinacions de pdflatex i bibtex ja faria, però mira, és Nadal i a un sempre li agrada complicar-se la vida.

De forma sensacional, MacPorts em permet fer

sudo port install rubber

i MacGicament tot hauria de funcionar. Però, ai làs! una dependència del bitxo, intltool, em dóna mil i un problemes. Seguint els fòrums he trobat que tot plegat ve donat per un error en el parser de xml (p5-xml-parser), però després de provar mil i una hist`roies, he acabat decidint desinstal.lar el sistema sencer del macports:

sudo port -f uninstall installed


Però, noi, reinstal.lant només el famós intltool obtinc:

olea:~ jvilla$ sudo port -v install intltool--->  Computing dependencies for intltool.
--->  Configuring intltool
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for perl... /opt/local/bin/perl
checking for perl >= 5.8.1... 5.8.9
checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool
shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_textproc_intltool/work/intltool-0.40.6" && ./configure --prefix=/opt/local " returned error 1
Error: Target org.macports.configure returned: configure failure: shell command failed (see log for details)
Warning: the following items did not execute (for intltool): org.macports.activate org.macports.configure org.macports.build org.macports.destroot org.macports.install
Log for intltool is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_textproc_intltool/main.log
Error: Status 1 encountered during processing.
To report a bug, see 

Després d'una bona estona trobo que el problema està més enllà de que Perl no trobi el XML::Parser. De fet,

/opt/local/bin/perl -e "require XML::Parser"

em diu

olea:~ jvilla$ /opt/local/bin/perl -e "require XML::Parser"
Can't load '/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/auto/XML/Parser/Expat/Expat.bundle' for module XML::Parser::Expat: dlopen(/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/auto/XML/Parser/Expat/Expat.bundle, 1): no suitable image found.  Did find:
 /opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/auto/XML/Parser/Expat/Expat.bundle: mach-o, but wrong architecture at /opt/local/lib/perl5/5.8.9/darwin-2level/DynaLoader.pm line 230.
 at /opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/XML/Parser.pm line 14
Compilation failed in require at /opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/XML/Parser.pm line 14.
BEGIN failed--compilation aborted at /opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/XML/Parser.pm line 18.
Compilation failed in require at -e line 1.

Per tant, sí que sembla que tinc un problema d'arquitectura. Sembla que l'Expat bundle està en arquitectura PPC, pot ser això? Mirem com està la cosa instal.lada

olea:~ jvilla$ port variants intltool
intltool has no variants
olea:~ jvilla$ port variants p5-xml-sax-expat
p5-xml-sax-expat has no variants
olea:~ jvilla$ port variants p5-xml-parser
p5-xml-parser has the variants:
   universal: Build for multiple architectures

o sigui que no s'entén massa, certament.
Però, com sempre passa, hi ha un munt de gent a la xarxa amb problemes similars i unes poques amb solucions. El problema és trobar-los. De https://trac.macports.org/ticket/4323 extrec la idea de que senzillament el macports s'està liant de valent amb les diverses versions de perl instal.lades. Per tant, ara, a més de fer neteja del que hi hagi instal.lat, faig neteja dràstica de tot el macports

$ sudo port -f uninstall installed
$ sudo rm -rf     /opt/local     /Applications/DarwinPorts     /Applications/MacPorts     /Library/LaunchDaemons/org.macports.*     /Library/Receipts/DarwinPorts*.pkg     /Library/Receipts/MacPorts*.pkg     /Library/StartupItems/DarwinPortsStartup     /Library/Tcl/darwinports1.0     /Library/Tcl/macports1.0     ~/.macports

em torno a baixar el programa de http://www.macports.org/install.php, l'instal.lo i torno a la càrrega:

sudo port -v install intltool

i ara tot funciona bé. M'he adonat que el macports es torna a baixar tots els paquets que necessita, cosa que abans no feia. Suposo que seguir la recepta de https://trac.macports.org/ticket/4323 era més elegant, però per estlviar maldecaps en altres casos, aquesta reinstal.lació de nou ha anat bé.
I Sant Tornem-hi amb la reinstal.lació de rubber.

dimecres, 24 de novembre del 2010

Videos de YouTube a Keynote

Per la xerrada de demà a l'Escolab, he estat buscant videos a youtube que siguin atractius per fer entendre els estudiants de secundària què fem la gent que ens dediquem a les simulacions moleculars. Afortunadament no és tan difícil com em pensava, i de pas he descobert quelcom que se m'escapava: es poden baixar els videos de youtube en un format de video tradicional com MP4. Sí, suposo que en el món 2.0 la meva descoberta pot semblar ingènua, però... m'ha fet il.lusió.

dimecres, 29 de setembre del 2010

Trucs pel vim

Tot cercant una manera de fer comentaris a múltiples línees de codi amb vi d'una forma ràpida, he topat amb la web dels trucs per vi. Molt útil.

Per cert, m'he quedat amb la següent explicació:
  1. selecciona amb
    <CONTRL-V>
    el bloc a comentar (tenint cura d'agafar la primera columna) en mode normal
  2. prem I per indicar que vols esciure al principi de la selecció
  3. escriu la marca de comentari que calgui (% per LaTeX, per exemple)
  4. ESC
i s'afegirà el símbol % en aquest cas a cada línia.

dilluns, 10 de maig del 2010

accelerant el meu mac

Estic prendat del sistema operatiu del mac. Fa ja uns quants anys que estic en el món dels ordinadors (contra el meu designi) i val a dir que la nissaga de tigres i lleopards diversos són el millor que s'ha fet per a que la gent treballi en el què interessa, i no s'estigui preocupant cada dia del per què avui el meu ordinador s'ha aixecat amb mal peu.

Tot i així, sovint cal fer neteja i fer que la màquina s'acceleri una mica. En aquest link teniu una sèrie de consells útils per ajudar-vos en aquesta tasca.

dimecres, 7 d’abril del 2010

Nova web d'Adun

Hem estrenat la nova web d'Adun i us en volem fer partíceps, tot i que encara estigui a mitges.

dimarts, 18 d’agost del 2009

svn: Working copy path '...' does not exist in repository

Ara que m'he mogut gairebé definitivament a SVN, i superat el primer contacte, és un bon moment per resumir com he solucionat (de manera maldestra però efectiva) el problema esmentat al títol del missatge. El cas és que a internet es troben molts missatges referents a això, i és un pel farragós solucionar-los via eclipse.

El què succeeix és que per alguna raó el client SVN creu que té un fitxer afegit al repositori però el fitxer, ai làs!, no existeix en aquell en realitat. L'svn es fa un embolic i no para de repetir el missatge d'error.

Solució? tirar pel dret:

1) fer una còpia de seguretat dels fitxers que sí que existeixen al directori en qüestió en local,
2) esborar el directori
3) i simplement demanar-li a l'SVN que recuperi els fitxers que hi ha al repositori (donat que el fitxer desaparegut en qüestió no existia més que en local, també la seva traça ha desaparegut en esborrar el directori problemàtic i el seu subdirectori .svn derivat)

He vist d'altres a internet que suggereixen editar el fitxer .svn/entries. De tota manera, si no sabeu el què feu, la opció de més amunt és molt més segura.

dimecres, 5 d’agost del 2009

Esborrar fitxers "locked" al mac

Sovint ens passa que volem esborrar fitxers al Mac però l'aplicació que els ha creat els ha bloquejat i sempre trobem un aburrit missatge al fer "empty Trash". La solució està molt ben explicada a la documentació de Mac, i en particular jo ho he solucionat fent
  • Obrir una terminal (/Applications/Utilities).
  • Escriure el següent, amb un espai blanc al final
sudo chflags -R nouchg
  • Arrastrar la carpeta o fitxer que es vulgui esborrar a la pantalla del terminal
  • Prémer Return
  • Entrar el password i retorn altre cop.
Related Posts with Thumbnails