Irix > Programmieren, Kompilieren
Diverse gcc probleme beim Kompilieren von Drqueue 0.62
Tom99:
Wenn davon nix im Path ist doch eigentlich nicht ....
Schau mal in die .login
obwohl
liegen die includes von neko in /usr/nekoware/include ?
mmm...Jasper hat recht - haus einfach runter dann ist's weg ::)
Jasper:
So also ich hab das mal ausprobiert...
- Die IRIX Einträge in den Makefiles würde ich nicht ersetzen, mach lieber
--- Code: ---export systype=IRIX
--- Ende Code ---
vorher, es sei denn, Du besteht auf 64-bit code, dann muss das der gcc aber auch können
- Die Makefiles sind "genuinely b0rked", das rekursive make in den Unterverzeichnissen funzt nicht...
Stattdessen einfach nach drqman wechseln und dort make sagen
- Für die 0.62-er (falls Du ein Upgrade vorhast) brauchst Du zwingend gtk+-2.6, da ist die SGI-Freeware no go... Ich würde sowieso eher komplett auf die nekoware wechseln, spielt aber im Moment keine grosse ROlle
- Das GNU install kennt die Option -root nicht, die bei make install verwendet wird... Sollte dieses bei Dir im Pfad vor dem IRIX-eigenen sitzen (mit which install zu erkennen), im Makefile die entsprechenden Passagen in /sbin/install ändern, das sind diejenigen, die dur einen (systype, IRIX)-Block eingeschachtelt sind, oder du suchst im Make file einfach nach der -root Option
- Vorher User/Gruppe drqueue:drqueue anlegen, oder INSTUID/INSTGID vor dem make install entsprechend tweaken...
- Zur Sicherheit würde ich INSTALLROOT auf ein temporäres verzeichnis umbiegen, um die Installation mal testen zu können, ohne nachher alle Einzelteile wieder aus dem Dateisystem zu pokeln...
Ich würde auch ein inst-package bauen, aber da ich bei mir die SGI-Freeware gar nicht verwende (backe mir meine Software immer selbst), wird das bei den gtk+-libs wohl vermutlich nicht so ganz das wahre sein, ohne Gewähr kann ich mich aber dran versuchen...
HTH
JM
chrisindy:
Hi,
Habe hier ne Indigo2 mit Irix 6.5.22... normalerweise muss ich den systype nach IRIX64 umschreiben, sonst meckert er...
Bin gerade leider bissl beschäftigt, werde mich vielleicht heute Abend oder Morgen nochmal dran setzen!
Nur Nekoware wäre an sich nicht schlecht, ich weiss allerdings nicht ob die wirklich ALLES haben, alsdass es sich ohne sgi freeware verwirklichen ließe? Dachte da waren paar Pakete..
Grüße und vielen dank für die zahlreichen Beiträge,
Chris
Jasper:
--- Zitat von: chrisindy am 18. Oktober 2005, 16:33:18 ---Hi,
Habe hier ne Indigo2 mit Irix 6.5.22... normalerweise muss ich den systype nach IRIX64 umschreiben, sonst meckert er...
--- Ende Zitat ---
Systype tut fuer den drqueue eh intern keinen Unterschied, kannst also auch die Makefiles unmschreiben - ich hatte irrtuemlich gedacht, dass das noch irgendwo in den sourcen selber verwendet wird
chrisindy:
Hi!
Also, habe die drqueue Sache wieder aufgenommen und erstmal das komplette System neu aufgesetzt, bei dev cds installiert und diesmal nur nekoware verwendet. Also auch den neusten neko -gtk built.
beim kompilieren passiert folgendes, eigentlich wie zuvor, aber zumindest soweit sauber (drqueue 0.60)
--
make
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o slave.o slave.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o computer_info.o computer_info.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o computer_status.o computer_status.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o task.o task.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o logger.o logger.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o communications.o communications.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o computer.o computer.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o request.o request.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o semaphores.o semaphores.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o job.o job.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o drerrno.o drerrno.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o database.o database.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o common.o common.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o mayasg.o mayasg.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o mentalraysg.o mentalraysg.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o blendersg.o blendersg.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o bmrtsg.o bmrtsg.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o pixiesg.o pixiesg.c
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o 3delightsg.o 3delightsg.c
ar sq libdrqueue.a computer_info.o computer_status.o task.o logger.o communications.o computer.o request.o semaphores.o job.o drerrno.o database.o common.o mayasg.o mentalraysg.o blendersg.o bmrtsg.o pixiesg.o 3delightsg.o
ar: Warning: creating libdrqueue.a
gcc -o slave slave.o libdrqueue.a
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o master.o master.c
gcc -o master master.o libdrqueue.a
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o requeue.o requeue.c
gcc requeue.o libdrqueue.a -o requeue
g++ -D__CPLUSPLUS -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -c -o sendjob.o sendjob.cpp
g++ -o sendjob sendjob.o libdrqueue.a
ld32: WARNING 84: /usr/lib32/libm.so is not used for resolving any symbol.
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o jobfinfo.o jobfinfo.c
gcc jobfinfo.o libdrqueue.a -o jobfinfo
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o blockhost.o blockhost.c
gcc blockhost.o libdrqueue.a -o blockhost
gcc -c -DCOMM_REPORT -Wall -I. -D__IRIX -g -O2 -o cjob.o cjob.c
gcc cjob.o libdrqueue.a -o cjob
/usr/nekoware/bin/gmake -C drqman
gmake[1]: Entering directory `/tmp/drqueue-0.60.0/drqman'
gcc -Wall -I.. -D__IRIX -g `pkg-config --cflags gtk+-2.0` -O2 -c -o main.o main.c
/bin/sh: pkg-config: not found
main.c:23:21: gtk/gtk.h: No such file or directory
In file included from drqm_jobs.h:28,
from drqman.h:26,
from main.c:26:
drqm_jobs_common.h:29: error: parse error before "GtkWidget"
drqm_jobs_common.h:29: warning: no semicolon at end of struct or union
drqm_jobs_common.h:30: warning: type defaults to `int' in declaration of `eframe_end'
drqm_jobs_common.h:30: warning: data definition has no type or storage class
drqm_jobs_common.h:31: error: parse error before '*' token
drqm_jobs_common.h:31: warning: type defaults to `int' in declaration of `eframe_step'
drqm_jobs_common.h:31: warning: data definition has no type or storage class
drqm_jobs_common.h:32: error: parse error before '*' token
drqm_jobs_common.h:32: warning: type defaults to `int' in declaration of `eblock_size'
drqm_jobs_common.h:32: warning: data definition has no type or storage class
---
Also, da er oben die pkg-config nicht findet, habe ich die nochmal nachinstalliert. glaube allerdings nicht, dass dies was ausmacht.
Was mich interessiert ist diese Zeile in der drqman makefile:
(6) "GTK_PATH = /usr/local/gtk/bin"
-
.. Ich weiss nun nicht, wo die nekoware Sachen überall hingekommen sind, auf jeden fall liegt aber eine file gtk und eine file gtk-demo (die allerdings einen core dump verursacht) in /usr/nekoware/bin .. muss dieses dir hier vielleicht angegeben werden?
Grüße
Chris
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln