Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Probleme compilation sur un AIX IBM

1 réponse
Avatar
alban
Bonjour

je vous expose mes problemes de compilation sur un AIX IBM,
j'utilise le compilateur XLC (je ne peut pas mettre d'autre compilateur).

J'essaye donc de compiler un programme en Pro*C donc qui nécessite une precompilation.
La precompilateur avec le makefile associé a mon programme ce passe tres bien et j'obtiens les fichiers ".c".
Le makefile continue sont travail et j'obtiens mes fichiers ".o" et c'est appartir d'ici que rien ne va plus.
Le linkage ne ce fait pas ! j'ai l'erreur suivant :


make -f proc.mk all
506-507 (W) No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.
"pmag.c", line 293.28: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "int" is not allowed.
"pmag.c", line 355.35: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "int" is not allowed.
"pmag.c", line 357.40: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "int" is not allowed.
"pmag.c", line 359.40: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "int" is not allowed.
"pmag.c", line 990.43: 1506-280 (W) Function argument assignment between types "unsigned char*" and "struct PRE*" is not allowed.
"pmag.c", line 990.47: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "union GLB*" is not allowed.
"pmag.c", line 1002.43: 1506-280 (W) Function argument assignment between types "unsigned char*" and "struct QRY*" is not allowed.
"pmag.c", line 1002.47: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "union GLB*" is not allowed.
"pmag.c", line 1157.33: 1506-280 (W) Function argument assignment between types "unsigned char*" and "struct STA*" is not allowed.
"pmag.c", line 1157.37: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "union GLB*" is not allowed.
"pmag.c", line 1252.25: 1506-280 (W) Function argument assignment between types "unsigned char*" and "struct ACK*" is not allowed.
"pmag.c", line 1252.29: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "union GLB*" is not allowed.
"pmag.c", line 1317.25: 1506-280 (W) Function argument assignment between types "unsigned char*" and "struct ACK*" is not allowed.
"pmag.c", line 1317.29: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "union GLB*" is not allowed.
"pmag.c", line 1973.18: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "int" is not allowed.
325 1500-010: (W) WARNING in scn_glb: Infinite loop. Program may not stop.
986 1500-010: (W) WARNING in bat_s115: Infinite loop. Program may not stop.
1117 1500-010: (W) WARNING in mag: Infinite loop. Program may not stop.
2417 1500-010: (W) WARNING in oto_s115: Infinite loop. Program may not stop.
cc -L/produits/oracle/v716/lib -o pmag pmag.o /produits/oracle/v716/lib/libsql.a /produits/oracle/v716/lib/osntab.o -lsqlnet -lora /produits/oracle/v716/lib/libpls.a -lsqlnet -lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6 -lcore -lm -lld -lm -lm -lld -lm pmis.o psto.o strategie.o mag.a wwin.a -lcurses
make : 1254-004 Code d'erreur de la dernière commande : 1.


Arrêt.


et oui en plus de ca le compilateur XLC de l'ibm AIX ne parle pas beaucoup...

ma premiere question est : esque ce Warning est bloquant ?
506-507 (W) No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.
(ca n'a pas l'air)

Ma deuxieme question est comment faire une bonne redirection des sorties standard et erreur sur IBM AIX ?

La compilation ce passant mal j'ai voulue complier un code plus simple :

#include <stdio.h>
main()
{ printf("toto\n");
}


#cc toto.c -o toto
1506-507 (W) No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.

#chmod 777 ./toto
#./toto
exec() : 0509-036 Impossible de charger le programme toto
en raison des erreurs suivantes :
0509-108 La section .loader n'existe pas.

Ne s'agit il pas encore d'une erreur de linker ? Si vous pouvez me mettre sur la voie merci beaucoup.

Alban

1 réponse

Avatar
Emmanuel Delahaye
Bonjour

je vous expose mes problemes de compilation sur un AIX IBM,
j'utilise le compilateur XLC (je ne peut pas mettre d'autre compilateur).

J'essaye donc de compiler un programme en Pro*C donc qui nécessite une precompilation.
La precompilateur avec le makefile associé a mon programme ce passe tres bien et j'obtiens les fichiers ".c".
Le makefile continue sont travail et j'obtiens mes fichiers ".o" et c'est appartir d'ici que rien ne va plus.
Le linkage ne ce fait pas ! j'ai l'erreur suivant :


make -f proc.mk all
506-507 (W) No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.


Hum...

"pmag.c", line 293.28: 1506-280 (W) Function argument assignment between types "const unsigned char*" and "int" is not allowed.


Visiblement, ceci est une erreur de compilation et non d'édition de
lien. Le .o n'est donc pas bien généré comme tu le dis, du moins, pas
celui de cette unité de compilation.

ma premiere question est : esque ce Warning est bloquant ?
506-507 (W) No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.
(ca n'a pas l'air)


Visiblement, tu utilises un logiciel dont tu n'as pas la licence... Pas
très légal tout ça... Ca pourrait très bien empécher le bon déroulement
des opérations, d'une manière ou d'une autre...

Ma deuxieme question est comment faire une bonne redirection des sorties standard et erreur sur IBM AIX ?

La compilation ce passant mal j'ai voulue complier un code plus simple :


Bon reflexe. Il faut effectivement toujours commencer par valider les
outils...

#include <stdio.h>
main()


int main (void)

{ printf("toton");


return 0;
}


#cc toto.c -o toto
1506-507 (W) No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.

#chmod 777 ./toto
#./toto
exec() : 0509-036 Impossible de charger le programme toto
en raison des erreurs suivantes :
0509-108 La section .loader n'existe pas.


Aucune idée. Il n'y a pas de mode d'emploi ? De site de référence ?

Ne s'agit il pas encore d'une erreur de linker ? Si vous pouvez me mettre sur la voie merci beaucoup.


Je commencerais par tirer cette histoire de licence au clair...
--
A+

Emmanuel Delahaye