======= Instal·lació del Topspin 2.1 =======
El primer problema és que, per seguratat, el DVD d'instal·lació es munta per defecte amb permís //noexec// fet que impedeix executar el programa d'instal·lació. Això es resol fàcilment amb la comanda,
root@cie-56-18:/opt# mount -o remount,exec /media/cdrom0
Llavors ja es pot executar el programa ''autorun'' per iniciar la instal·lació del Tospin.
Com que ja està instal·lat el Topsin 3.1, trio l'opció //Customized// per podeu excloure de la instal·lació els components //Diskless// i //FLEXlm// i fer servir els instal·lats amb el Topspin 3.1.
{{ :informatica:debian-ts21:20120215_-_topspin21_-_select_products_.png?300 |}}
A continuació, a la finestra //Select a spectrometer configuration to import// trio l'opció //spect in /opt/topspin3.1//
{{ :informatica:debian-ts21:20120215_-_topspin21_-_global_path.png?300 |}}
Contesto **no** a la pregunta de si vull afegir la carpeta d'instal·lació del Topspin a la variable //PATH// general, on ja està definit el directori del Topspin-3.1. Això vol dir si escrivim ''topspin'' en una terminal, accedirem a la versió 3.1.
Després de triar l'usuari //nmrsu// (que ja existeix) i de definir el password de l'usuari d'administració, comença la instal·lació del Topspin-2.1... i poc després finalitza sense cap missatge d'error,
{{ :informatica:debian-ts21:20120215_-_topspin21_-_installation_completed.png?300 |}}
===== Configuració del Topspin 2.1 =====
Comentar breument la configuració del programa un cop connectat a la consola, i afegir alguna captura de pantalla
Aquestes són les tasques realitzades,
* :ok: executar ''ha'' i verificar els mòduls detectats
* :ok: ''cf'' funciona correctament i el fitxer de configuració final (afegir-ho!) coincideix amb el del Topspin 2.1 de l'ordinador vell
* :ok: recuperació de la configuració del Topspin 2.1 amb ''nmr_restore'' a partir del fitxer creat amb ''nmr_save'' al Topspin 2.1 de l'ordinador vell. Inicialment donava un error de compilació, però ja s'ha resolt (veure més avall).
* :ok: ''expinstall''
* :ok: ''edhead'', ''edprosol'', i la resta de comandes no donen cap problema. Cal importar a mà els //parameter sets// i altres fitxers de configuració que no s'hagin transferit.
* :ok: ''cplbruk all'' per compilar tots els programes AU de Bruker.
* :ok: ''cpluser all'' per compilar tots els programes AU de la carpeta //user//.
==== Problemes de compilació - Llibreria libpthread ====
Al compilar els programes AU dóna un error perquè no troba la llibreria //libpthread//. Per resoldre el problema cal copiar els fitxers d'aquesta llibreria de la carpeta ''/opt/topspin3.x/gnu/lib'' a ''/opt/topspin2.x/gnu/lib'',
# find ./topspin3.1/ -name libpthread* -exec ls -l {} \;
lrwxrwxrwx 1 root root 34 Feb 21 2012 ./topspin3.1/prog/shlib/libpthread.so.0 \
-> ../../gnu/lib/libpthread-2.11.3.so
lrwxrwxrwx 1 root root 20 Feb 21 2012 ./topspin3.1/gnu/lib/libpthread.so.0 \
-> libpthread-2.11.3.so
-rwxr-xr-x 1 root root 116809 Feb 21 2012 ./topspin3.1/gnu/lib/libpthread-2.11.3.so
# cp --archive /opt/topspin3.1/gnu/lib/libpthread-2.11.3.so /opt/topspin2.1/gnu/lib
# ls -l /opt/topspin2.1/gnu/lib/libpthread*
-rwxr-xr-x 1 root root 116809 Feb 21 2012 /opt/topspin2.1/gnu/lib/libpthread-2.11.3.so
lrwxrwxrwx 1 root root 20 Feb 21 2012 /opt/topspin2.1/gnu/lib/libpthread.so.0 \
-> libpthread-2.11.3.so
# cp --archive /opt/topspin3.1/prog/shlib/libpthread.so.0 /opt/topspin2.1/prog/shlib
# ls -l /opt/topspin2.1/prog/shlib/libpthread*
lrwxrwxrwx 1 root root 34 Feb 21 2012 /opt/topspin2.1/prog/shlib/libpthread.so.0 \
-> ../../gnu/lib/libpthread-2.11.3.so
==== Problemes de compilació - Llibreries de 32-bits en un entorn de 64-bits ====
Per compilar els programes AU en un entorn de 64-bits i enllaçar-los amb les llibreries de 32-bits, cal modificar el fitxer //makeau//. Aparentment el programa d'instal·lació s'encarrega de resoldre aquest problema per instal·lacions del Topspin a ordinadors que facin servir la distribució GNU/Linux RHEL o distribucions derivades (CentOS, Fedora), però no el resol en el cas de distribucions GNU/Linux Debian i derivades (Ubuntu).
Les modificacions a fer al fitxer ///opt/topspin2.1/exp/stan/nmr/au/makeau// són,
*** makeau 2012-02-21 16:50:34.000000000 +0100
--- makeau.ts216 2012-02-21 13:26:27.000000000 +0100
*************** if (($opersys ne "Windows_NT")) {
*** 104,116 ****
$CC = $GCC . ' -B' . $GCC_EXEC_PREFIX;
$LPATH = ' -L'.$GCC_LIB;
$LD = $GCC_PLUS . ' -B'.$GCC_EXEC_PREFIX . $LPATH;
!
! ##
! # Extend with 32Bit library path on debian/ubuntu
! $LD .= '-B/lib32 -B/usr/lib32' if ( -d '/usr/lib32' or -d '/lib32' );
!
! $ld_out ='-o ';
! $cc_info = 'gcc (Bruker)';
if (open(FD,"/etc/redhat-release"))
{
my $redhat = ;
--- 104,111 ----
$CC = $GCC . ' -B' . $GCC_EXEC_PREFIX;
$LPATH = ' -L'.$GCC_LIB;
$LD = $GCC_PLUS . ' -B'.$GCC_EXEC_PREFIX . $LPATH;
! $ld_out ='-o ';
! $cc_info = 'gcc (Bruker)';
if (open(FD,"/etc/redhat-release"))
{
my $redhat = ;
*************** $IndexStaticExt = 6;
*** 346,352 ****
);
##
%ldopt = (
! 'LINUX' => ' -m32 -Wl,-warn-common,-warn-constructors'.
$LIBSTD . $v_gcc,
'Windows_GCC'=> ' -Wl,-warn-common,-warn-constructors' .
' -Wl,--stack,0x800000' . $v_gcc,
--- 341,347 ----
);
##
%ldopt = (
! 'LINUX' => ' -Wl,-warn-common,-warn-constructors'.
$LIBSTD . $v_gcc,
'Windows_GCC'=> ' -Wl,-warn-common,-warn-constructors' .
' -Wl,--stack,0x800000' . $v_gcc,
==== Problemes de compilació - Compilació de poptau i paropt ====
La compilació del programa AU //poptau// al Topspin 2.x genera un executable que dóna un error de segmentació quan s'executa. Començo per comprovar les biblioteques que crida el programa,
# ldd /opt/topspin2.1/prog/au/bin/poptau
linux-gate.so.1 => (0xf76fd000)
auliba.so => not found
aulibp.so => not found
chparmod.so => not found
librrs.so => not found
liblrs.so => not found
editpar.so => not found
libacq.so => not found
util.so => not found
uni.so => not found
par.so => not found
libPath.so => not found
libcb.so => not found
libdl.so.2 => /lib32/libdl.so.2 (0xf76df000)
libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf75ea000)
libm.so.6 => /lib32/libm.so.6 (0xf75c4000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf75a6000)
libc.so.6 => /lib32/libc.so.6 (0xf745f000)
/lib/ld-linux.so.2 (0xf76fe000)
i veig que hi ha moltes que no troba, però una comprovació d'altres programes AU que sí funcionen en aquesta versió 2.x de Topspin, i a la versió 3.x, i a la versió 2.x en altres espectròmetres, m'indica que aquest és un fet comú a tots ells i que no impedeix el correcte funcionament dels programes. Així doncs, la causa del problema ha d'ésser una altra.
Si executo la comanda ''ldd -r'' em dóna un missatge d'error semblant al que surt en executar el programa,
# ldd -r poptau
linux-gate.so.1 => (0xf770d000)
auliba.so => not found
aulibp.so => not found
chparmod.so => not found
librrs.so => not found
liblrs.so => not found
editpar.so => not found
libacq.so => not found
util.so => not found
uni.so => not found
par.so => not found
libPath.so => not found
libcb.so => not found
libdl.so.2 => /lib32/libdl.so.2 (0xf76ef000)
libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf75fa000)
libm.so.6 => /lib32/libm.so.6 (0xf75d4000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf75b6000)
libc.so.6 => /lib32/libc.so.6 (0xf746f000)
/lib/ld-linux.so.2 (0xf770e000)
/usr/bin/ldd: line 118: 15004 Segmentation fault LD_TRACE_LOADED_OBJECTS=1 LD_WARN=yes LD_BIND_NOW=yes LD_LIBRARY_VERSION=$verify_out LD_VERBOSE= "$@"
mentre que a l'AvanceIII 400sb no dóna cap missatge d'error,
[root@cie-55-32 bin]# ldd -r poptau
auliba.so => not found
aulibp.so => not found
chparmod.so => not found
librrs.so => not found
liblrs.so => not found
editpar.so => not found
libacq.so => not found
util.so => not found
uni.so => not found
par.so => not found
libPath.so => not found
libcb.so => not found
libdl.so.2 => /lib/libdl.so.2 (0x00d7f000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0760b000)
libm.so.6 => /lib/tls/libm.so.6 (0x00d5a000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00ccb000)
libc.so.6 => /lib/tls/libc.so.6 (0x00101000)
/lib/ld-linux.so.2 (0x00524000)
undefined symbol: ssleep (./poptau)
undefined symbol: PathXWinNMRProg (./poptau)
undefined symbol: Change_object (./poptau)
undefined symbol: Start_unimar (./poptau)
undefined symbol: DurationToAscii (./poptau)
undefined symbol: setcurdat (./poptau)
undefined symbol: RemoveTree (./poptau)
undefined symbol: Gets (./poptau)
undefined symbol: CPR_exec (./poptau)
undefined symbol: Show_status (./poptau)
undefined symbol: fetchstor (./poptau)
undefined symbol: getcurdat (./poptau)
undefined symbol: Proc_err (./poptau)
undefined symbol: Exit_unimar (./poptau)
undefined symbol: PathSystemTemp (./poptau)
undefined symbol: getparamunit (./poptau)
undefined symbol: Get_command (./poptau)
undefined symbol: GetCPR_object (./poptau)
undefined symbol: PathXWinNMRCurDir (./poptau)
undefined symbol: execau (./poptau)
Per altra banda, el programa //paropt// també dóna un error semblant de //segmentation fault// quan s'executa i quan se li aplica la comanda ''ldd -r''. Això podria servir per identificar el problema.
Una cerca de ''compile*'' a la //Knowledge Database// de Bruker proporciona una possible pista,
* item 9577 - workaround - TOPSPIN - 1.3.10 - non-critical - CentOS5 TopSpin 1.3pl10 cannot compile AU programs under CentOS 5. Proporciona una nova versió del programa //makeau,// derivada de la versió distribuïda amb el TS-3.x, i esmenta que, si el directori d'instal·lació del Topspin no és ///opt/topspin//, cal modificar la primera línia del programa //makeau//
que, en el nostre cas, no és la causa, ja que la primera línia al fitxer //makeau// és correcte.
Al fitxer //opt/topspin2.1/topspin// que s'executa per configurar l'entorn de treball del Topspin i posar en marxa tots els programes i serveis requerits per executar el Topspin, ''LD_LIBRARY_PATH'' està definida com
Insert Codexport LD_LIBRARY_PATH="$szProgPath"/pvshlib:"$szProgPath"/shlib
on
szProgPath=`"$XWINNMRHOME"/pathScript prog`
szExpPath=`"$XWINNMRHOME"/pathScript exp`
és a dir, en el cas de Topspin ''LD_LIBRARY_PATH'' es defineix com la carpeta ///opt/topspin2.1/prog/shlib// on es troben totes les biblioteques que les comandes ''ldd'' de més amunt indicaven que els programes AU compilats no troben,
# ls -F
Atma.so* ipsoRout.so* libCUtil.so* libhttp_channel.so libpthread.so.0@ libtcl3.so
auliba.so* libacb.so* libDatPath.so libhttp_transport.so libpvacq.so libTimer.so*
aulibp.so* libacq.so* libDispClient.so* libJCamp.so* libPvPath.so lib_tty.so*
Bird.so* libap.so* libDispNMR.so* libJVMAgent.so* libPvUtil.so libTxBbis.so*
Bis.so* libAqRack.so* libDisp.so* liblrs.so* libQTP.so* libUpnpClient.so*
chparmod.so* libArg.so* libDispX.so* libMo.so* libRcuBbis.so* libUtil.so*
convpw_deb.so* libAsuBbis.so* libDppPars.so* libomniCodeSets4.so.1* librrs.so* libVtu.so*
convpw.so* libaxis_client.so libDPP.so* libomniORB4.so.1* librx22.so* libWrap.so*
ConvSf.so* libaxis_xerces.so libEdte.so* libomnisslTP4.so.1* lib_sbsb.so* libxerces-c.so.27
editpar.so* libBbis.so* libError.so* libomnithread.so.3* libSe451Bbis.so* par.so*
Error.so* libBmpc.so* libFcuBbis.so* libParxBase.so libShapeIO.so* sxutil.so*
gc.so* libBpsu.so* libFunc.so* libParx.so libssl.so.0.9.8* uni.so*
Gilson.so* libcb.so* libgcc_s.so@ libPath.so* libstdc++.so@ util.so*
golibipso.so* libCf.so* libgcc_s.so.1@ libpreamp.so* libstdc++.so.6@
gosim.so* libcrypto.so.0.9.8* libGoRec.so* libPreemp.so* libSwish.so*
Hppr.so* libCt.so* libhpcu.so* libPsTul.so libtbcload1.4.so
**Potser la solució passi per emprar i/o adaptar el fitxer ''makeau'' del TS-3x al TS-2x, o fer servir el ''makeau'' de l'item #9577. Però abans de provar-ho comparo els fitxers ''makeau'' del TS-2x, TS-3x, i de l'item #9577, i trobo que potser seria convenient afegir ''-m32'' a les següents definicions per LINUX de les opcions del compilador, tal i com s'ha fet als fitxers de les versions posteriors i adaptada,
#
# basic cc- options
#
%ccopt =(
'LINUX' => ' -g -m32 -w' . $v_gcc,
'Windows_GCC' => ' -g -w' . $v_gcc,
'Windows_NT' => ' /nologo /MD /w',
);
%erropt =(
'LINUX' => '-g -m32 -pedantic-errors -Wall',
'Windows_GCC' => '-g -pedantic-errors -Wall',
'Windows_NT' => '',
);
%warnopt =(
'LINUX' => '-g -m32 -pedantic -Wall',
'Windows_GCC' => '-g -pedantic -Wall',
'Windows_NT' => '-W3',
);
##
Per altra banda, no estic segur de si caldria afegir aquesta definició que surt al ''makeau'' del TS-3x,
my @alwaysSharedLibs = qw
(
libxerces-c
);
però que a la versió de l'itej #9577 surt com,
my @alwaysSharedLibs = ();
en tot cas, caldria tenir present que la variable definida al TS-2x seria ''@alwaysSharedLibs''.
==== Provant el makeau de l'item #9577 ====
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ./makeau -show -verbose ./src/paropt
makeau ($Revision: 1.108.2.2 $ )
OperatingSystem=LINUX
Setup for gcc (Bruker)
CC=/opt/topspin2.1/gnu/bin/gcc -B/opt/topspin2.1/gnu/lib/gcc-lib/
LD=/opt/topspin2.1/gnu/bin/c++ -B/opt/topspin2.1/gnu/lib/gcc-lib/ -L/opt/topspin2.1/gnu/lib-B/lib32 -B/usr/lib32
Installed RPM packages:
Can't exec "rpm": No such file or directory at ./makeau line 317.
used kernel release: 2.6.32-5-amd64
Exec /opt/topspin2.1/gnu/bin/gcc -B/opt/topspin2.1/gnu/lib/gcc-lib/ -print-search-dirs
install: /pr/gnu/lib/gcc/i686-pc-linux-gnu/3.4.6/
programs: =/opt/topspin2.1/gnu/lib/gcc-lib/i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/lib/gcc-lib/:/opt/topspin2.1/gnu/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/bin/../libexec/gcc/:/pr/gnu/libexec/gcc/i686-pc-linux-gnu/3.4.6/:/pr/gnu/libexec/gcc/i686-pc-linux-gnu/3.4.6/:/pr/gnu/libexec/gcc/i686-pc-linux-gnu/:/pr/gnu/lib/gcc/i686-pc-linux-gnu/3.4.6/:/pr/gnu/lib/gcc/i686-pc-linux-gnu/:/usr/libexec/gcc/i686-pc-linux-gnu/3.4.6/:/usr/libexec/gcc/i686-pc-linux-gnu/:/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/:/usr/lib/gcc/i686-pc-linux-gnu/:/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/bin/i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/bin/:/pr/gnu/i686-pc-linux-gnu/bin/i686-pc-linux-gnu/3.4.6/:/pr/gnu/i686-pc-linux-gnu/bin/
libraries: =/opt/topspin2.1/gnu/lib/gcc-lib/i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/lib/gcc-lib/:/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/bin/../lib/gcc/:/pr/gnu/lib/gcc/i686-pc-linux-gnu/3.4.6/:/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/lib/i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/lib/:/pr/gnu/i686-pc-linux-gnu/lib/i686-pc-linux-gnu/3.4.6/:/pr/gnu/i686-pc-linux-gnu/lib/:/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../i686-pc-linux-gnu/3.4.6/:/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../:/pr/gnu/lib/i686-pc-linux-gnu/3.4.6/:/pr/gnu/lib/:/lib/i686-pc-linux-gnu/3.4.6/:/lib/:/usr/lib/i686-pc-linux-gnu/3.4.6/:/usr/lib/
Known paths:
/opt/topspin2.1/gnu/bin
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/opt/topspin2.1/prog/bin
Current environment:
XAUTHORITY=/var/run/gdm3/auth-for-sermnuab-sepKxp/database
BROWSER=/etc/alternatives/gnome-www-browser
GNOME_KEYRING_CONTROL=/tmp/keyring-VeaQgK
SSH_AUTH_SOCK=/tmp/keyring-VeaQgK/ssh
PWD=/opt/topspin2.1/exp/stan/nmr/au
LANG=en_US.UTF-8
USER=root
LOGNAME=root
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
PERL_BADLANG=true
CORBA_CLIENT=y
SHLVL=2
UIDPATH=/opt/topspin2.1/prog/uid/%U
XDG_SESSION_COOKIE=9625bbc6a68066da92ea31fc00000008-1360832580.925882-1513866542
PATH=/opt/topspin2.1/gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/topspin2.1/prog/bin
PERL5LIB=/opt/topspin2.1/perl/lib/perl5
WINDOWID=52432982
COLORTERM=gnome-terminal
GTK_MODULES=canberra-gtk-module
TERM=xterm
MICS_HOME=/opt/Bruker/mics
LM_LICENSE_FILE=:/usr/local/flexlm/Bruker/licenses/license.dat
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-OuAzObpD9U,guid=8550eda552f6c3d67b0a389900000078
HOME=/root
LANGUAGE=en_US:en
SSH_AGENT_PID=2885
JAVA_LOGDIR=/opt/topspin2.1/prog/curdir/sermnuab
GNOME_KEYRING_PID=2825
USE_VARPATH=1
XFILESEARCHPATH=/opt/topspin2.1/prog/app-defaults/%N%S:/usr/lib/X11/app-defaults/%N%S
WINDOWPATH=7
DISPLAY=:0.0
GTK_RC_FILES=/etc/gtk/gtkrc:/home/sermnuab/.gtkrc-1.2-gnome2
_RLD_ARGS=-ignore_unresolved
ORBIT_SOCKETDIR=/tmp/orbit-sermnuab
GDMSESSION=default
MAIL=/var/mail/root
XWINNMRHOME=/opt/topspin2.1
USERNAME=sermnuab
_=./makeau
XDG_DATA_DIRS=/usr/share/gnome:/usr/share/gdm/:/usr/local/share/:/usr/share/
DESKTOP_SESSION=default
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:
GDM_LANG=en_US.utf8
SHELL=/bin/bash
OMNIORB_CONFIG=/opt/topspin2.1/prog/server/omniorb.conf
GPG_AGENT_INFO=/tmp/seahorse-s3nBkW/S.gpg-agent:2899:1
SESSION_MANAGER=local/cie-56-18:@/tmp/.ICE-unix/2849,unix/cie-56-18:/tmp/.ICE-unix/2849
GDM_KEYBOARD_LAYOUT=es
LibraryExtension: .so
StaticLibraryExtension: .a
SharedLibraryExtension: .so
LibraryPath: shlib
StaticLibraryPath: lib
SharedLibraryPath: shlib
ObjectExtension: .o
BinaryExtension:
BinaryExtension:
Check for /opt/topspin2.1/exp/stan/nmr/au/paravision_2.1.pl
Check for /opt/topspin2.1/exp/stan/nmr/au/user_2.1.pl
submacro(/opt/topspin2.1/prog/include/inc /opt/topspin2.1/exp/stan/nmr/au/src/paropt /opt/topspin2.1/prog/au/bin/paropt.E)
Values of %NEEDED_LIBS
USE_AULIBP => USE_AULIBP
aulibp
librrs
liblrs
Used libraries:
auliba
aulibp
chparmod
librrs
liblrs
editpar
libacq
util
aulibp
uni
par
libPath
libcb
Included Libraries
auliba.so
aulibp.so
chparmod.so
librrs.so
liblrs.so
editpar.so
libacq.so
util.so
aulibp.so
uni.so
par.so
libPath.so
libcb.so
auliba.a
aulibp.a
chparmod.a
libacq.a
editpar.a
util.a
uni.a
par.a
libPath.a
libcb.a
Combine /opt/topspin2.1/exp/stan/nmr/au/vorspann /opt/topspin2.1/prog/au/bin/paropt.E > /opt/topspin2.1/prog/au/bin/paropt.c
Include Option: -I/opt/topspin2.1/prog/include -I/opt/topspin2.1/gnu/lib/gcc-lib/i686-pc-linux-gnu/3.4.6/include
chdir /opt/topspin2.1/prog/au/bin
Opersys=LINUX
/opt/topspin2.1/gnu/bin/gcc -B/opt/topspin2.1/gnu/lib/gcc-lib/ -c -DLINUX_INTEL -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -g -m32 -w -v -I/opt/topspin2.1/prog/include -I/opt/topspin2.1/gnu/lib/gcc-lib/i686-pc-linux-gnu/3.4.6/include paropt.c
Reading specs from /opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/specs
Configured with: ../gcc-3.4.6/configure --prefix=/pr/gnu --enable-threads=posix --enable-__cxa_atexit --enable-languages=c,c++ --with-cpu=pentium4
Thread model: posix
gcc version 3.4.6
/opt/topspin2.1/gnu/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.6/cc1 -quiet -v -I/opt/topspin2.1/prog/include -I/opt/topspin2.1/gnu/lib/gcc-lib/i686-pc-linux-gnu/3.4.6/include -iprefix /opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/ -isystem /opt/topspin2.1/gnu/lib/gcc-lib/include -DLINUX_INTEL -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE paropt.c -quiet -dumpbase paropt.c -m32 -mtune=pentium4 -auxbase paropt -g -w -version -o /tmp/ccFmwAq3.s
ignoring nonexistent directory "/opt/topspin2.1/gnu/lib/gcc-lib/include"
ignoring nonexistent directory "/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/include"
ignoring nonexistent directory "/pr/gnu/include"
ignoring nonexistent directory "/pr/gnu/lib/gcc/i686-pc-linux-gnu/3.4.6/include"
ignoring nonexistent directory "/pr/gnu/i686-pc-linux-gnu/include"
ignoring nonexistent directory "/opt/topspin2.1/gnu/lib/gcc-lib/i686-pc-linux-gnu/3.4.6/include"
#include "..." search starts here:
#include <...> search starts here:
/opt/topspin2.1/prog/include
/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/include
/usr/local/include
/usr/include
End of search list.
GNU C version 3.4.6 (i686-pc-linux-gnu)
compiled by GNU C version 3.4.6.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/bin/as -V -Qy -o paropt.o /tmp/ccFmwAq3.s
GNU assembler version 2.16.1 (i686-pc-linux-gnu) using BFD version 2.16.1
exit=0 sig=0 dump=0
Used Libraries
auliba.so aulibp.so chparmod.so librrs.so liblrs.so editpar.so libacq.so util.so aulibp.so uni.so par.so libPath.so libcb.so auliba.a aulibp.a chparmod.a libacq.a editpar.a util.a uni.a par.a libPath.a libcb.a
/opt/topspin2.1/gnu/bin/c++ -B/opt/topspin2.1/gnu/lib/gcc-lib/ -L/opt/topspin2.1/gnu/lib-B/lib32 -B/usr/lib32 -m32 -Wl,-warn-common,-warn-constructors -v -s /opt/topspin2.1/prog/au/bin/paropt.o /opt/topspin2.1/prog/shlib/auliba.so /opt/topspin2.1/prog/shlib/aulibp.so /opt/topspin2.1/prog/shlib/chparmod.so /opt/topspin2.1/prog/shlib/librrs.so /opt/topspin2.1/prog/shlib/liblrs.so /opt/topspin2.1/prog/shlib/editpar.so /opt/topspin2.1/prog/shlib/libacq.so /opt/topspin2.1/prog/shlib/util.so /opt/topspin2.1/prog/shlib/aulibp.so /opt/topspin2.1/prog/shlib/uni.so /opt/topspin2.1/prog/shlib/par.so /opt/topspin2.1/prog/shlib/libPath.so /opt/topspin2.1/prog/shlib/libcb.so /opt/topspin2.1/prog/lib/auliba.a /opt/topspin2.1/prog/lib/aulibp.a /opt/topspin2.1/prog/lib/chparmod.a /opt/topspin2.1/prog/lib/libacq.a /opt/topspin2.1/prog/lib/editpar.a /opt/topspin2.1/prog/lib/util.a /opt/topspin2.1/prog/lib/uni.a /opt/topspin2.1/prog/lib/par.a /opt/topspin2.1/prog/lib/libPath.a /opt/topspin2.1/prog/lib/libcb.a -lm -ldl -o paropt
/opt/topspin2.1/gnu/bin/c++ -B/opt/topspin2.1/gnu/lib/gcc-lib/ -L/opt/topspin2.1/gnu/lib-B/lib32 -B/usr/lib32 -m32 -Wl,-warn-common,-warn-constructors -v -s /opt/topspin2.1/prog/au/bin/paropt.o /opt/topspin2.1/prog/shlib/auliba.so /opt/topspin2.1/prog/shlib/aulibp.so /opt/topspin2.1/prog/shlib/chparmod.so /opt/topspin2.1/prog/shlib/librrs.so /opt/topspin2.1/prog/shlib/liblrs.so /opt/topspin2.1/prog/shlib/editpar.so /opt/topspin2.1/prog/shlib/libacq.so /opt/topspin2.1/prog/shlib/util.so /opt/topspin2.1/prog/shlib/aulibp.so /opt/topspin2.1/prog/shlib/uni.so /opt/topspin2.1/prog/shlib/par.so /opt/topspin2.1/prog/shlib/libPath.so /opt/topspin2.1/prog/shlib/libcb.so /opt/topspin2.1/prog/lib/auliba.a /opt/topspin2.1/prog/lib/aulibp.a /opt/topspin2.1/prog/lib/chparmod.a /opt/topspin2.1/prog/lib/libacq.a /opt/topspin2.1/prog/lib/editpar.a /opt/topspin2.1/prog/lib/util.a /opt/topspin2.1/prog/lib/uni.a /opt/topspin2.1/prog/lib/par.a /opt/topspin2.1/prog/lib/libPath.a /opt/topspin2.1/prog/lib/libcb.a -lm -ldl -o paropt
Reading specs from /opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/specs
Configured with: ../gcc-3.4.6/configure --prefix=/pr/gnu --enable-threads=posix --enable-__cxa_atexit --enable-languages=c,c++ --with-cpu=pentium4
Thread model: posix
gcc version 3.4.6
/opt/topspin2.1/gnu/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.6/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o paropt -s /usr/lib32/crt1.o /usr/lib32/crti.o /opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/crtbegin.o -L/opt/topspin2.1/gnu/lib-B/lib32 -L/usr/lib32 -L/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6 -L/opt/topspin2.1/gnu/bin/../lib/gcc -L/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../../../i686-pc-linux-gnu/lib -L/opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/../../.. -warn-common -warn-constructors /opt/topspin2.1/prog/au/bin/paropt.o /opt/topspin2.1/prog/shlib/auliba.so /opt/topspin2.1/prog/shlib/aulibp.so /opt/topspin2.1/prog/shlib/chparmod.so /opt/topspin2.1/prog/shlib/librrs.so /opt/topspin2.1/prog/shlib/liblrs.so /opt/topspin2.1/prog/shlib/editpar.so /opt/topspin2.1/prog/shlib/libacq.so /opt/topspin2.1/prog/shlib/util.so /opt/topspin2.1/prog/shlib/aulibp.so /opt/topspin2.1/prog/shlib/uni.so /opt/topspin2.1/prog/shlib/par.so /opt/topspin2.1/prog/shlib/libPath.so /opt/topspin2.1/prog/shlib/libcb.so /opt/topspin2.1/prog/lib/auliba.a /opt/topspin2.1/prog/lib/aulibp.a /opt/topspin2.1/prog/lib/chparmod.a /opt/topspin2.1/prog/lib/libacq.a /opt/topspin2.1/prog/lib/editpar.a /opt/topspin2.1/prog/lib/util.a /opt/topspin2.1/prog/lib/uni.a /opt/topspin2.1/prog/lib/par.a /opt/topspin2.1/prog/lib/libPath.a /opt/topspin2.1/prog/lib/libcb.a -ldl -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /opt/topspin2.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/3.4.6/crtend.o /usr/lib32/crtn.o
exit status is: 0 0
la compilació ha funcionat, ara haurem de comprovar-ho,
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ls -l
total 188
-rwxrwxr-x 1 sermnuab sermnuab 42226 Feb 14 10:08 makeau
-rw-r--r-- 1 sermnuab sermnuab 42076 Feb 13 17:05 makeau.item9577
-rwxr-xr-x 1 sermnuab sermnuab 37702 Feb 14 09:39 makeau.ts216
-rwxr-xr-x 1 sermnuab sermnuab 37906 Feb 11 17:12 makeau.ts216-for-debian
drwxrwxrwx 3 nmrsu nmrsu 12288 Feb 11 16:12 src
-rw-rw-r-- 1 nmrsu nmrsu 5609 Feb 28 2010 vorspann
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ls /opt/topspin2.1/prog/a
app-defaults/ au/
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ls /opt/topspin2.1/prog/a
app-defaults/ au/
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ls /opt/topspin2.1/prog/au/bin/paropt
/opt/topspin2.1/prog/au/bin/paropt
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ls -l /opt/topspin2.1/prog/au/bin/paropt
-rwxr-xr-x 1 root root 14680 Feb 14 10:08 /opt/topspin2.1/prog/au/bin/paropt
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ldd -r /opt/topspin2.1/prog/au/bin/paropt
linux-gate.so.1 => (0xf76f4000)
auliba.so => not found
aulibp.so => not found
chparmod.so => not found
librrs.so => not found
liblrs.so => not found
editpar.so => not found
libacq.so => not found
util.so => not found
uni.so => not found
par.so => not found
libPath.so => not found
libcb.so => not found
libdl.so.2 => /lib32/libdl.so.2 (0xf76d6000)
libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf75e1000)
libm.so.6 => /lib32/libm.so.6 (0xf75bb000)
libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf759d000)
libc.so.6 => /lib32/libc.so.6 (0xf7456000)
/lib/ld-linux.so.2 (0xf76f5000)
/usr/bin/ldd: line 118: 2358 Segmentation fault LD_TRACE_LOADED_OBJECTS=1 LD_WARN=yes LD_BIND_NOW=yes LD_LIBRARY_VERSION=$verify_out LD_VERBOSE= "$@"
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# ls -l /lib/ld-linux.so.2
lrwxrwxrwx 1 root root 20 Dec 3 17:43 /lib/ld-linux.so.2 -> /lib32/ld-linux.so.2
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# file /lib/ld-linux.so.2
/lib/ld-linux.so.2: symbolic link to `/lib32/ld-linux.so.2'
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# file /lib32/ld-linux.so.2
/lib32/ld-linux.so.2: symbolic link to `ld-2.11.3.so'
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au# file /lib32/ld-2.11.3.so
/lib32/ld-2.11.3.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
root@cie-56-18:/opt/topspin2.1/exp/stan/nmr/au#
==== Enllaços d'interès ====
* [[http://www3.ntu.edu.sg/home/ehchua/programming/cpp/gcc_make.html]]
* [[http://mindspill.net/computing/linux-notes/debugging-load-library-path-issues/]]
* [[http://tldp.org/HOWTO/Program-Library-HOWTO/index.html]]
* [[http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html]]