Come risolvere% GTM-E-GDInvalid, Formato del file di directory globale non riconosciuto: MUMPS.GLD, Etichetta prevista: GTCGBDUNX007, trovato: GTCGBDUNX006?

StackOverflow https://stackoverflow.com/questions/9427557

  •  12-11-2019
  •  | 
  •  

Domanda

Sto ricevendo questo errore con gt.m

%GTM-E-GDINVALID, Unrecognized Global Directory file format: /home/blah/gt.m/example/mumps.gld, expected label: GTCGBDUNX007, found: GTCGBDUNX006
.

Ecco cosa ho fatto finora:

Ottieni la versione http://sourceforge.net/projects/fis-gtm/

tar -xzf gtm_V55000_linux_i686_pro.tar.gz 

chmod +x semstat2 mupip mumps lke gtmsecshr gtcm_shmclean gtcm_server gtcm_play gtcm_pkdisp gtcm_gnp_server geteuid ftok dse
.

Ora iniziamo come questo in Bash

mkdir example; cd example
.

e invoca i parotite dal genitore dir,

../mumps -r GDE
.

L'output è questo

%GDE-I-GDUSEDEFS, Using defaults for Global Directory 
 /home/blah/gt.m/example/mumps.gld
.

Ora abbiamo impostato il dir funzionante per creare il file GLD

GDE>  change -s DEFAULT -f=/home/blah/gt.m/gt.m/example/
GDE> exit
.

L'uscita dal comando è questa:

.

% GDE-I-Verifica, verifica OK % GDE-I-GDCREATE, creando il file di directory globale /home/blah/gt.m/example/mumps.gld

Ora questo crea una versione V6 di GLD, quale Mupip non piace.

strings mumps.gld  | head -1
.

Che contiene questa stringa:

GTCGBDUNX006H
.

Ma Mupip si aspetta un 7 non a 6!

../mupip create

>%GTM-E-GDINVALID, Unrecognized Global Directory file format: >/home/blah/gt.m/example/mumps.gld, expected label: GTCGBDUNX007, found: GTCGBDUNX006
.

Se modifico il file e sostituisco il 6 con un 7, ../mupip create . Questo funziona!

Ora ho un file DAT e vai a GTM per salvare qualcosa: GTM>s ^foo("blah")=1

.

% GTM-E-GDInvalid, formato file di directory globale non riconosciuto:> /home/blah/gt.m/example/mumps.gld, Etichetta prevista: GTCGBDUNX006, Trovato: GTCGBDUNX007

Oh, così che vuole una V6, così buona cosa ho sostenuto il vecchio, uno, lo sostituisco.

GTM>s ^foo("blah")=1

funziona GTM>zwr ^foo(*)

>^foo("blah")=1
.

Quindi i dati sono memorizzati.

Qualcuno può spiegare questo? in dettaglio? Perché Mupip funziona con un numero di versione diverso? Nota, non ho eseguito altri comandi, sto solo imparando e non voglio eseguire qualsiasi enorme routine di installazione una radice che non capisco.

È stato utile?

Soluzione

hai già installato GT.M (e immagino che sia una versione precedente) sul tuo sistema da qualche altra parte e ha una variabile di ambiente definita per questo nel tuo ambiente Bash / TCSH / * SH, o non l'hai fattoFornisci tutto il passo che hai da ottenere a quell'errore.

La mia ipotesi è che hai già installato GT.M da qualche parte e i tuoi comandi sopra utilizza parte di quell'installazione.È possibile verificare facilmente questo comando: env | grep gtm.

Se seguo i tuoi passaggi sopra menzionati, ottengo questo risultato:

laurent@laurent /tmp/test $ tar -zxf ~/Projects/gtm_V55000_linux_i686_pro.tar.gz
laurent@laurent /tmp/test $ chmod +x semstat2 mupip mumps lke gtmsecshr gtcm_shmclean gtcm_server gtcm_play gtcm_pkdisp gtcm_gnp_server geteuid ftok dse
laurent@laurent /tmp/test $ mkdir example; cd example
laurent@laurent /tmp/test/example $ ../mumps -r GDE
%GTM-E-GTMDISTUNDEF, Environment variable $gtm_dist is not defined
.

Allora, io come detto, hai fatto qualcos'altro o hai una versione GT.M diversa già installata ed è il motivo per cui alcuni comandi si aspettano diverse versioni di GLD.

Altri suggerimenti

Nei tuoi passaggi u non mostrare se hai installato o non GT.M.

Questa è solo la versione decompressa, prima:

    chmod 777 configure
    ./configure
.

L'installazione produrrà nuovi file nella directory GTM_Dist.

Spero che abbia aiutato.

Poiché Bhaskar ha notato nel tuo post croce su effidami.Assicurati di seguire le istruzioni di installazione per GT.M.Le istruzioni possono essere trovate nel capitolo 2 del Amministrazione e operazioni UNIXGuida

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top