Annonces Google
Serveur IRC
Serveur : irc.portlane.se
Canal : #AmigaNG
Activité du Site

Pages vues depuis 25/07/2007 : 25 262 097

  • Nb. de membres 187
  • Nb. d'articles 1 270
  • Nb. de forums 19
  • Nb. de sujets 20
  • Nb. de critiques 24

Top 10  Statistiques

Index du forum »»  Création-Développement »» Pb portage petit prog Linux => AmigaOS

Pb portage petit prog Linux => AmigaOS #1503

3Contributeur(s)
zzd10halexcorto
3 Modérateur(s)
K-LElwoodcorto
zzd10h zzd10hicon_post
Bonsoir,
j'essaye, pour le fun, de compiler un programme Linux (c3270, émulateur de terminal IBM 3270) sur AmigaOS.
Mais j'ai des problèmes avec les fonctions 'pipe', 'fork' et 'execvp'. Je m'en suis sorti pour d'autres fonctions telles que waitpid, sockaddr_sun ou timeval ou d'autres trucs simples mais là....

C'est un programme en ncurses, J'utilise donc PDCurses et le guide SPFD.

Est-ce que qq'un a déjà eu ce problème (Corto, par hasard ? ;) ) et si oui, comment y remédier ?

Je pense qu'un émulateur 3270 pour accéder aux mainframes IBM est ce qu'il manque le plus à AmigaOS,
en tout cas plus que la protection mèmoire des espaces adresses, plus que Warp3D et l'overlay sur les RadeonHD et plus que le SMP pour les X1000... :-D

Bref, par avance, merci pour votre aide

13.Work:Dev/x3270/c3270-3.3> gmake
gcc -o c3270 actions.o ansi.o apl.o c3270.o charset.o child.o ctlr.o fallbacks.o ft.o ft_cut.o ft_dft.o glue.o help.o host.o icmd.o idle.o keymap.o kybd.o macros.o print.o printer.o proxy.o readres.o resolver.o resources.o rpq.o screen.o see.o sf.o tables.o telnet.o toggles.o trace_ds.o unicode.o unicode_dbcs.o utf8.o util.o xio.o XtGlue.o menubar.o keypad.o version.o -L/SDK/Local/newlib/lib -lncurses -lsdlmain -lsdl -lunix -lauto
child.o: In function `init_child':
child.c:(.text+0x34): undefined reference to `pipe'
child.c:(.text+0x80): undefined reference to `pipe'
child.o: In function `fork_child':
child.c:(.text+0x220): undefined reference to `fork'
macros.o: In function `Script_action':
macros.c:(.text+0x7d9c): undefined reference to `pipe'
macros.c:(.text+0x7dd4): undefined reference to `pipe'
macros.c:(.text+0x804c): undefined reference to `execvp'
gmake: *** [c3270] Error 1
alex alexicon_post
@zzd10h

malheureusement tu te trouves confronté aux trois fonctions Posix qui posent le plus de problèmes.
En fait il n'est pas évident de donner une implémentation générique qui fonctionne tout le temps (en tout cas pour fork et execvp). Disons que si le programme fait un fork() pour ensuite faire tout de suite un exec alors tu dois pouvoir émuler le tout avec CreateProcess() voir System().
Pour Pipe tout dépend de ce qui est fait, il existe un device PIPE: dans AmigaOS tu devrais pouvoir l'utiliser dans pas mal de cas...
--
AmigaOne A1222
AmigaOne X1000 - RadeonHD - 2 Gio RAM
AmigaOne XE G4@933 - Radeon 9200 SE - 512 Mio RAM
zzd10h zzd10hicon_post
Merci Alex,
Je vais essayer ça !
zzd10h zzd10hicon_post

C'est beau MVS (aka z/OS), n'est-ce pas ?

http://zzd10h.amiga-ng.org/c3270/PDCurses_c3270.jpg

Et ça n'a pas besoin de Warp3D !

Bon, j'arrive à me connecter à mon mainframe mais

1) les couleurs sont horribles (inversées)

2) aucunes entrée clavier ne fonctionnent (ça c'est super génant)



alex alexicon_post
@zzd10h

Houla ne me parles pas de MVS ça me rappelle de mauvais souvenirs de Cobol et autres sympathiques choses (CICS, DL1...) ;-)

Concernant les couleurs, regarde si par hasard il n'y aurait pas quelque part dans le soft une hypothèse sur le format de l'écran (RGBPC vs RGB, cf. Picasso96API.doc/--colors--, en gros pb little/big endian)

Pour ton clavier je ne peux pas te dire, est-ce que PDCurses ne devrait pas s'occuper de ça?
--
AmigaOne A1222
AmigaOne X1000 - RadeonHD - 2 Gio RAM
AmigaOne XE G4@933 - Radeon 9200 SE - 512 Mio RAM
corto cortoicon_post
zzd10h : Pas de chance, tu es tombé sur les fonctions manquantes qui font mal, je ne m'attendais pas à ça dans ce type d'application ! Comment t'en es-tu sorti ?

Je vais t'envoyer ma lib si tu veux faire un essai.

Sinon, peux-tu me dire comment je peux procéder de mon côté, si je veux essayer ?

Pour le clavier .. je ne me souviens plus si j'avais eu des problèmes. Par contre, pour les couleurs, oui.

Je n'ai pas retrouvé le thread dont tu m'as parlé, sur tn5250. Quel est l'URL ?
zzd10h zzd10hicon_post
Alex :
Si, si, je veux bien parler de MVS, désolé mais pour moi ce ne sont pas de mauvais souvenirs,
c'est mon boulot actuel mais côtè système, pas dév.
C'est un OS passionnant et c'est sympa le "stress" de participer à gérer et de maintenir en état opérationnel une machine où des milliers d'utilisateurs accèdent à des bases DB2 par CICS ou IMS !

Aprés, je conçois que pour un développeur, l'interface TSO/ISPF soit moins sexy qu'Eclipse...

Pour les couleurs, c'est étrange, pour la 1ére étape du démarrage (étape NIP de l'IPL pour ceux qui connaissent) cela fonctionne mais dès que la Console passe en Master Console, les couleurs déraillent.

Corto :
Ben, je m'en suis sorti en les commentant tout simplement, je veux juste voir si ça peut marcher...

Merci pour ta lib, cela m'intéresse, je te réponds par mail ;).

Voici le thread où tu parlais de tn5250 :
http://amigaworld.net/modules/newbb/viewtopic.php?topic_id=28267&forum=15#481893

Par contre pour essayer, à moins de se monter un émulateur mainframe (Hercules) ou d'avoir accès à un vrai mainframe... il n'y a pas d'accès MVS public.

corto cortoicon_post
Ok, je te l'ai envoyée, en l'état, depuis la dernière fois que je l'ai utilisée ... c'est à dire il y a longtemps.
J'espère qu'elle pourra te servir, sachant que je ne peux pas tester.
alex alexicon_post
Citation : zzd10h?

Alex :
Si, si, je veux bien parler de MVS, désolé mais pour moi ce ne sont pas de mauvais souvenirs,
c'est mon boulot actuel mais côtè système, pas dév.
C'est un OS passionnant et c'est sympa le "stress" de participer à gérer et de maintenir en état opérationnel une machine où des milliers d'utilisateurs accèdent à des bases DB2 par CICS ou IMS !


Ben moi c'était dans le cadre d'une banque qui a le bon sens en action ;-) Et bon comment dire Cobol effectivement ça fait pas super rêver... En fait je participais à la migration de code Cobol ANS vers COBOL II tout un programme, du coup on se programmait des batailles navales pour passer le temps entre midi et deux ;-)

Citation : zzd10h?
Aprés, je conçois que pour un développeur, l'interface TSO/ISPF soit moins sexy qu'Eclipse...


Mais euh, et puis d'abord en ce moment ce serait plutôt Visual Studio 2012 8-)
--
AmigaOne A1222
AmigaOne X1000 - RadeonHD - 2 Gio RAM
AmigaOne XE G4@933 - Radeon 9200 SE - 512 Mio RAM
zzd10h zzd10hicon_post
Merci Corto
mais malheureusement ça ne compile pas, apparement il manquerait des fonctions ncurses terminal (je t'ai envoyé un mail)

Entre temps, j'ai essayè la version X11 de cet émulateur de terminal, x3270.
=> avec le SDK Amicygnix et là ça marche mais c'est super super lent.
Même sans être connecté à un mainframe, l'interface réagit trés trés lentement
par contre le flux 3270 arrive à la bonne vitesse.
=> inutilisable :-(

Par contre, pour test, j'ai compilé xbill et là ça marche vraiment bien :-P
(Je sais qu'il existe un port sur AmigaOS4 et que ce jeu est complètement inintéréssant...)

Pour xbill, je n'ai même pas fait de modifications dans le source (à part le Makefile), Edgar a vraiment fait un sacré boulot !

voila, je vais demander conseil à Edgar pour les temps de réponse de l'interface.

Pour curiositè, sous Amicygnix, voici les bonnes couleurs d'une console MVS :

http://zzd10h.amiga-ng.org/Amicygnix/x3270/x3270_01.jpg

http://zzd10h.amiga-ng.org/Amicygnix/x3270/x3270_02.jpg

et xbill

http://zzd10h.amiga-ng.org/Amicygnix/xbill/xbill.jpg


edit : Alex : des batailles navales en 3270 ? vous deviez vraiment vous em... :)

Message édité par : zzd10h / 25-03-2013 10:44
Petites Annonces

0 annonce(s) publiée(s)

Consulter

AmigaOS 4.1

Laissez-vous tenter par
AmigaOS 4.1
AmiTheme

AmiTheme