User Tools

Site Tools


informatica:hp_z230t_400wb_topspin327

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
informatica:hp_z230t_400wb_topspin327 [2016/04/22 15:36]
miquel [Restriccions a l'usuari 'nmrsu']
informatica:hp_z230t_400wb_topspin327 [2020/08/12 12:21] (current)
miquel [ld: /usr/lib32/crti.o: unrecognized relocation (0x2b) in section `.init']
Line 418: Line 418:
   * libxi6 [i386]   * libxi6 [i386]
  
-<WRAP center round important 80%>+<WRAP important>
 Els missatges "libjvm.so => not found" es poden ignorar ja que la biblioteca "libjvm.so" està disponible al TopSpin (///opt/topspin3.2/jre/lib/i386/[client|server]/libjvm.so//). Els missatges "libjvm.so => not found" es poden ignorar ja que la biblioteca "libjvm.so" està disponible al TopSpin (///opt/topspin3.2/jre/lib/i386/[client|server]/libjvm.so//).
 </WRAP> </WRAP>
Line 513: Line 513:
 Trio la segona opció i s'obre la finestra //edprosol// però l'únic puls que apareix és el de 90 graus per protó amb Pulse Width [us] = 5,50 i Att. Lvl. [-dbW] = -0.00. Trio la segona opció i s'obre la finestra //edprosol// però l'únic puls que apareix és el de 90 graus per protó amb Pulse Width [us] = 5,50 i Att. Lvl. [-dbW] = -0.00.
  
-<WRAP center round todo 80%>+<WRAP todo>
 Comprovar els valors d'edprosol a l'anterior instal·lació del TopSpin. Comprovar els valors d'edprosol a l'anterior instal·lació del TopSpin.
 </WRAP> </WRAP>
Line 542: Line 542:
 ==== Restriccions a l'usuari 'nmrsu' ==== ==== Restriccions a l'usuari 'nmrsu' ====
  
-<WRAP center round todo 80%>+<WRAP todo>
 Caldrà restringir l'usuari //mrsu// Caldrà restringir l'usuari //mrsu//
   * <del>que no surti a la finestra de login (gdm3)</del>   * <del>que no surti a la finestra de login (gdm3)</del>
Line 606: Line 606:
 ===== Adreces IP dels mòduls de la consola ===== ===== Adreces IP dels mòduls de la consola =====
  
-<WRAP center round important 80%>+<WRAP important>
 Aquestes adreces només donen accés als mòduls de la consola si es visiten des de l'ordinador de l'espectròmetre. Des de qualsevol altre ordinador, en la major part dels casos no porten enlloc (són adreces de xarxa local) o a altres ordinadors/dispositius que no tenen res a veure amb els indicats aquí. Aquestes adreces només donen accés als mòduls de la consola si es visiten des de l'ordinador de l'espectròmetre. Des de qualsevol altre ordinador, en la major part dels casos no porten enlloc (són adreces de xarxa local) o a altres ordinadors/dispositius que no tenen res a veure amb els indicats aquí.
 </WRAP> </WRAP>
Line 623: Line 623:
 Descarrego la darrera versió de firmware de la DRU (dru_firmware_151014.gz) i la instal·lo. Descarrego la darrera versió de firmware de la DRU (dru_firmware_151014.gz) i la instal·lo.
  
 +===== Compilació dels programes AU =====
 +
 +Provo a compilar el programa AU //nmr_save// amb la comanda ''cplbruk nmr_save'' i em surt un missatge d'error,
 +
 +<file>
 +nmr_save.c:30:19:  fatal error:stdio.h: No such file or directory
 + #include <stdio.h>
 +                   ^
 +compilation terminated                   
 +</file>
 +
 +Per resoldre'l instal·lo les següents biblioteques de l'arquitecura i386:
 +  * **libc6-dev:i386**  (instal·la libc-dev-bin, linux-libc-dev:i386, manpages-dev)
 +  * **libc6-dev-i386:amd64**  (instal·la multiples paquets de l'arquitectura amd64 relacionats amb gcc, lib32, libc6, libx32, i altres, necessaris per compilar aplicacions de 32-bits en un entorn de 64-bits)
 +
 +Amb això aconsegueixo compilar el programa AU //nmr_save.// Llavors provo a compilar tots els programes AU amb les comandes ''cplbruk all'' i ''cpluser all'' i es compilen sense cap missatge d'error.
 +
 +
 +===== Problemes amb l'IconNMR (xwish3) =====
 +
 +Tot i que l'IconNMR no es fa servir en aquest ordinador, quan l'he posat en marxa i he provat a entrar a la configuració, m'ha donat un error semblant al que dona a l'AvanceIII-600 després d'actualitzar el sistema operatiu, o sigui que intentaré resoldre'l en aquest espectròmetre i després comprovaré la solució al 600.
 +
 +L'error és:
 +
 +<file>
 +ILLEGAL TERMINATION
 +of command /opt/topspin3.2/prog/mod/xwish3
 +MODULE DIED IN ITS SLEEP
 +due to signal 11 (Segmentation fault)
 +(Original message = ILLEGAL TERMINATION
 +of command /opt/topspin3.2/prog/mod/xwish3
 +MODULE DIED IN ITS SLEEP
 +due to signal 11 (Segmentation fault))
 +
 +====================================================
 +14 August 2019 13:00:44.137 +0200
 +Topspin Version  = 3.2 (of July 20 2015),build 1791
 +JVM Version      = 1.8.0_31 Oracle Corporation
 +JVM Total memory = 174 MB
 +JVM Free  memory = 121 MB
 +
 +java.lang.Exception: Stack trace
 + at de.bruker.nmr.mfw.base.AbstractMessage.setMsgSource(AbstractMessage.java:813)
 + at de.bruker.nmr.mfw.base.AbstractMessage.<init>(AbstractMessage.java:772)
 + at de.bruker.nmr.mfw.base.BWarning.<init>(BWarning.java:57)
 + at de.bruker.nmr.prsc.cpr.CprListener$CPRWarning.<init>(CprListener.java:337)
 + at de.bruker.nmr.prsc.cpr.CprListener.loadAlert(CprListener.java:878)
 + at de.bruker.cpr.CPRClientPOA._invoke_loadAlert(CPRClientPOA.java:121)
 + at de.bruker.cpr.CPRClientPOA._invoke(CPRClientPOA.java:43)
 + at org.openorb.adapter.poa.POA.dispatch(Unknown Source)
 + at org.openorb.net.AbstractServerRequest.dispatch(Unknown Source)
 + at org.openorb.net.ServerManagerImpl.serve_request(Unknown Source)
 + at org.openorb.net.ServerManagerImpl.thread_pool_main(Unknown Source)
 + at org.openorb.net.ServerManagerImpl.access$200(Unknown Source)
 + at org.openorb.net.ServerManagerImpl$PoolThread.run(Unknown Source)
 +</file>
 +
 +i podria apuntar a que manca algun compoment d'OpenORB (Corba) o a que hi ha un problema de compatibilitat.
 +
 +Instal·lo alguns paquets relacionats amb OpenORB/Corba
 +
 +  * libomniorb4-2:i386
 +  * libomnithread4:i386
 +  * libomnithread4-dev:i386
 +    * The following additional packages will be installed: libdpkg-perl libfile-fcntllock-perl pkg-config
 +  * libcos4-2:i386
 +
 +però no resolen el problema, o sigui que caldrà seguir investigant.
 +
 +  * [[https://queue.acm.org/detail.cfm?id=1142044 | The Rise and Fall of CORBA.]] There’s a lot we can learn from CORBA’s mistakes. MICHI HENNING, ZeroC. Component Technologies, ACMQUEUE June 30, 2006, Volume 4, issue 5.
 +  * [[https://queue.acm.org/detail.cfm?id=1388786 | Corba: Gone But (Hopefully) Not Forgotten.]] There is no magic and the lessons of the past apply just as well today. Terry Coatta. Component Technologies, ACMQUEUE June 30, 2006, Volume 4, issue 5.
 +
 +===== Java JAR Depdendencies =====
 +
 +Cal instal·lar el paquet
 +  * default-jdk-headless
 +per tenir accés al programa ''jdeps'' i poder trobar les dependències d'un fitxer JAR.
 +
 +  * [[https://blog.codefx.org/tools/jdeps-tutorial-analyze-java-project-dependencies/ | A JDeps Tutorial – Analyze Your Project’s Dependencies]]
 +  * [[https://examples.javacodegeeks.com/core-java/java-9-jdeps-example/ | Java 9 JDeps Example]]
 +
 +
 +
 +===== Problemes amb la compilació dels programes AU =====
 +
 +Primer error:
 +
 +  * [[https://selkieupsilon.blogspot.com/2018/10/starting-topspin-and-compiling-au.html | Starting Topspin and compiling AU programs on update from Ubuntu 16.04 to 18.04]]
 +  * [[https://selkieupsilon.blogspot.com/2017/07/issue-with-compiling-au-programs-on.html | Installation and compiling AU programs on Topspin 3.5 pl7 under Ubuntu 16.04 LTS (Xenial)]]
 +  * [[https://forums.xilinx.com/t5/Vivado-High-Level-Synthesis-HLS/Testbench-error-with-gcc/td-p/756773 | Testbench error with gcc]]
 +
 +<file>
 +# cd /opt/topspin3.2/gnu/lib/gcc/i686-pc-linux-gnu/4.5.3/include-fixed
 +# nl -ba features.h | sed -n 300,310p    300 #endif
 +   301
 +   302 /* This is here only because every header file already includes this one.  */
 +   303 #ifndef __ASSEMBLER__
 +   304 # ifndef _SYS_CDEFS_H
 +   305 #  include <sys/cdefs.h>
 +   306 # endif
 +   307
 +   308 /* If we don't have __REDIRECT, prototypes will be missing if
 +   309    __USE_FILE_OFFSET64 but not __USE_LARGEFILE[64]. */
 +   310 # if defined __USE_FILE_OFFSET64 && !defined __REDIRECT
 +
 +# locate cdefs.h
 +/usr/include/sys/cdefs.h
 +/usr/include/x86_64-linux-gnu/sys/cdefs.h
 +
 +# apt install libc6-dev:i386
 +Reading package lists... Done
 +Building dependency tree       
 +Reading state information... Done
 +The following additional packages will be installed:
 +  linux-libc-dev:i386
 +Suggested packages:
 +  glibc-doc:i386
 +The following NEW packages will be installed:
 +  libc6-dev:i386 linux-libc-dev:i386
 +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
 +Need to get 6,378 kB of archives.
 +After this operation, 39.5 MB of additional disk space will be used.
 +Do you want to continue? [Y/n] 
 +Get:1 http://security.debian.org buster/updates/main i386 linux-libc-dev i386 4.19.37-5+deb10u2 [1,186 kB]
 +[...]
 +Setting up libc6-dev:i386 (2.28-10) ...
 +#
 +</file>
 +
 +
 +==== Configuració de LD_LIBRARY_PATH  ====
 +
 +Few hints:
 +
 +Use the ldconfig command to show the dynamic linker/loader (ldd) paths:
 +   ldconfig -v | grep -v ^$'\t'
 +
 +The ldd paths are set in ///etc/ld.so.conf// and ///etc/ld.so.conf.d//.
 +
 +If your libraries are not on standard path then either you need to add them to the path or add non-standard path to LD_LIBRARY_PATH
 +   export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<Your_non-Standard_path>
 +Once you done any one of above things then you need to update the dynamic linker run-time binding by executing below command:
 +   sudo ldconfig
 +
 +Per més informació consultar:
 +
 +  * [[https://unix.stackexchange.com/questions/279397/ldd-does-not-find-path-how-to-add | ldd does not find path, How to add]]
 +  * [[https://serverfault.com/questions/480008/finding-ldd-search-path | finding ldd search path]]
 +
 +
 +
 +
 +
 +==== Undefined 'intrptr_t' ====
 +
 +FIXME aquesta secció cal moure-la a la pàgina correcta, però per ara la deixo aquí
 +
 +For problems related to **undefined 'intrptr_t' type name** see,
 +
 +  * [[https://selkieupsilon.blogspot.com/2016/06/installing-bruker-topspin-on-ubuntu.html | Installing Bruker TopSpin on Ubuntu Wily Werewolf 15.10 ]]
 +  * [[https://stackoverflow.com/questions/9042024/error-unknown-type-name-intptr-t | error: unknown type name 'intptr_t']]
 +  * [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=808486 | Debian Bug report logs - #808486]] dieharder: FTBFS: unistd.h: error: unknown type name 'intptr_t'
 +
 +The fix is to insert an include definition for the //stdint.h// header file into the //~TOPSPIN/exp/stan/au/vorspann// file,
 +
 +<file c>
 +...
 +#include <stdio.h>
 +#include <stdlib.h>
 +
 +/****************************************************  -*-C++-*-
 + * MCE - 20190817
 + *
 + * Include "stdint.h" header file before unistd.h include line to avoid errors like:
 +   /usr/include/unistd.h:1043:20: error: unknown type name 'intptr_t'
 + *
 + * For additional information read
 + * https://selkieupsilon.blogspot.com/2016/06/installing-bruker-topspin-on-ubuntu.html
 + ***************************************************************/
 +
 +#include <stdint.h>
 +
 +#include <unistd.h>
 +#include <string.h>
 +...
 +</file>
 +
 +Algunes comandes útils:
 +
 +<file>
 +# export XWINNMRHOME=/opt/topspin3.6.1
 +# cd $XWINNMRHOME/exp/stan/nmr/au
 +# ./makeau -help
 +# ./makeau -libraries ./src/muiltizg
 +# ./makeau -show ./src/multizg
 +# ./makeau -native -show ./src/multizg
 +</file>
 +
 +==== ld: /usr/lib32/crti.o: unrecognized relocation (0x2b) in section `.init' ====
 +
 +L'intent de compilar un programa (multizg) un cop resolt el problema anterior dona el següent error:
 +
 +<file>
 +# ./makeau -show ./src/multizg
 +/opt/topspin3.6.1/gnu/bin/gcc -B/opt/topspin3.6.1/gnu/lib/gcc/ -c -DLINUX_INTEL -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE  -g -m32 -w -I/opt/topspin3.6.1/prog/include -I/opt/topspin3.6.1/gnu/lib/gcc/i686-pc-linux-gnu/4.9.1/include  multizg.c 
 +/opt/topspin3.6.1/gnu/bin/c++ -B/opt/topspin3.6.1/gnu/lib/gcc/ -L/opt/topspin3.6.1/gnu/lib-B/lib32 -B/usr/lib32  -m32 -Wl,-warn-common,-warn-constructors  -s  /opt/topspin3.6.1/prog/au/bin/multizg.o  /opt/topspin3.6.1/prog/shlib/auliba.so [...] /opt/topspin3.6.1/prog/shlib/libxerces-c.so /opt/topspin3.6.1/prog/shlib/libomnithread.so  -lm -ldl   -o multizg
 +/opt/topspin3.6.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/4.9.1/../../../../i686-pc-linux-gnu/bin/ld: /usr/lib32/crti.o: unrecognized relocation (0x2b) in section `.init'
 +/opt/topspin3.6.1/gnu/bin/../lib/gcc/i686-pc-linux-gnu/4.9.1/../../../../i686-pc-linux-gnu/bin/ld: final link failed: Bad value
 +collect2: error: ld returned 1 exit status
 +</file>
 +
 +que està causat per
 +
 +<blockquote>
 +using a older version of ld to link a library that had been built with a newer version
 +<cite>
 +[[https://stackoverflow.com/questions/46058050/unable-to-compile-unrecognized-relocation | Unable to compile: unrecognized relocation]]
 +</cite>
 +</blockquote>
 +
 +i la solució és
 +
 +<blockquote>
 +The fix is either to build the library that you want to link with a older version of the binutils suite, or to upgrade ld on the machine that wants to link that library.
 +<cite>
 +[[https://stackoverflow.com/questions/46058050/unable-to-compile-unrecognized-relocation | Unable to compile: unrecognized relocation]]
 +</cite>
 +</blockquote>
 +
 +Per més informació consultar:
 +
 +  * [[https://stackoverflow.com/questions/46058050/unable-to-compile-unrecognized-relocation | Unable to compile: unrecognized relocation]]
 +
 +==== Multiarchitecture cross-compilation ====
 +
 +  * [[https://wiki.debian.org/Multiarch/Implementation | Debian Multiarch Implementation]]
 +  * [[https://debian-administration.org/article/531/Using_proprietary_i386_apps_on_an_amd64_system | Debian Administrator - Using proprietary i386 apps on an amd64 system]]
  
  
  
  
informatica/hp_z230t_400wb_topspin327.1461332212.txt.gz · Last modified: 2016/04/22 15:36 by miquel