Errores en la instalación de ns con bash 3.1.x

El simulador tiene un fallo en las librerías que distribuye con el paquete all-in-one (versiones 2.28 y 2.29), que hace que no se pueda compilar. Me he enfrentado a este problema al intentar instalar el simulador en dos ordenadores con una recién instalada.

Se produce con el intérprete bash en su versión 3.1.x o superior, que yo haya visto. Con las versiones 3.0.x va bien.

El error que da en primer lugar es:

checking system version (for dynamic loading)... ./configure: line 7624: syntax error near unexpected token `)'
./configure: line 7624: ` OSF*)'

(El número de línea puede variar de una distribución a otra)

Este error no se produce por esa salida, «OSF*)», que es una simple comprobación y está correcta, sino por un error de sintaxis que hay en otra parte. Está en 3 paquetes de los que se distribuyen en el ns-allinone: tcl, tk y otcl. Tendremos que buscar los siguientes archivos:

  • tcl: archivo tcl8.x.x/unix/tcl.m4.
  • tk: archivo tk8.x.x/unix/tcl.m4. Igual que para tcl.
  • otcl: archivo otcl-1.x/configure.in. Igual que para tcl y tk.

Dentro de esos archivos buscamos las líneas que contengan:
system=MP-RAS-`awk '{print $3}' /etc/.relid'`
y se sustituyen por:
system=MP-RAS-`awk '{print $3}' /etc/.relid`
Es decir, hay que quitar el apóstrofe del final.

Después de editar los archivos hay que ejecutar «autoconf» en cada directorio que se modifique, para volver a generar el script configure. A continuación, el script de instalación debería funcionar sin ningún problema.

Actualización: he enviado un informe de este problema al sistema de seguimiento de bugs en SourceForge: Configuration error in tcl, tk and otcl.

Share