Re: Tn5250 compile under IBM Aix 5.3

"Alberto" <a.ernestini-UVFfO7pX/[email protected]>
Newsgroups gmane.comp.emulators.tn5250
Organization midrange.com
Message-ID <[email protected]>
Ok. I've got the gcc 4.1.1 ( probably the same binaries of Scott) but it 
seems it gets worse.

I can't get the "same" results got with gcc 4.0.0 beacuse of naccept...
This is the log :

//----------------------------//
gcc -v
Using built-in specs.
Target: powerpc-ibm-aix5.3.0.0
Configured with: ../gcc-4.1.1/configure --disable-nls
Thread model: aix
gcc version 4.1.1
$make
        make  all-recursive
Making all in lib5250
        if /bin/bash ../libtool --tag=CC --mode=compile 
cc -DHAVE_CONFIG_H  -I. -I. -I.. -DSYSCONFDIR=\"/usr/local/etc\"  -I/usr
/include   -g -O2 -MT sslstream.lo -MD -MP -MF ".deps/sslstream.Tpo" -c -o 
sslstream.lo sslstream.c;  then mv -f ".deps/sslstream
.Tpo" ".deps/sslstream.Plo"; else rm -f ".deps/sslstream.Tpo"; exit 1; fi
 gcc -DHAVE_CONFIG_H -I. -I. -I.. -DSYSCONFDIR=\"/usr/local/etc\" -I/usr/include 
 -g -O2 -MT sslstream.lo -MD -MP -MF .deps/sslstr
eam.Tpo -c sslstream.c -o sslstream.o

sslstream.c: In function 'tn5250_ssl_stream_init':
sslstream.c:465: error: 'Tn5250Stream' has no member named 'naccept'
sslstream.c: In function 'tn3270_ssl_stream_init':
sslstream.c:559: error: 'Tn5250Stream' has no member named 'naccept'
make: The error code from the last command is 1.


Stop.
make: The error code from the last command is 1.


Stop.
make: The error code from the last command is 2.


Stop.

$echo $PATH
/QOpenSys/usr/bin:/usr/ccs/bin:/QOpenSys/usr/bin/X11:/usr/sbin:.:/usr/bin:/QOpenSys/usr/bin:/QIBM/ProdData/DeveloperTools/pase/bi
n:/QOpenSys/usr/bin/X11:/usr/local/bin

$find / -name socket.h
/QOpenSys/QIBM/ProdData/SOI/PASE/include/sys/socket.h
/QOpenSys/usr/include/sys/socket.h
/QIBM/include/sys/socket.h

//----------------------------//

I've also double checked the socket.h files on the path, and the 
sslstream.c. There is something missing on the installation of GCC 4.1.1. i 
suppose.
I really wish to get the same results you've got Scott, also for see if 
lp5250d could run on PASE :-)
I will continue my investigations!
Ciao.
Alberto.

"Alberto" <a.ernestini-UVFfO7pX/[email protected]> ha scritto nel messaggio 
news:mailman.30265.1275064092.2580.linux5250-Zwy7GipZuJitq2lpoERdew@public.gmane.org
> Hi again!
> I've updated and configured again my PASE on the Iseries (V5R4M0) with GCC 
> 4.0.0 (got from Yip)
> So , compiling TN5250 i am having the same problems with snprintf 
> etc..etc.. as shown before from James Rich.
> I will try to find GCC 4.1.1 binaries, and then i will try again to 
> compile it.
> There are any extra steps to follow? As i've already told it could be 
> really interesting to have it working on the Iseries PASE :-)
> Ciao.
> ALberto.
>
>
>
> "Scott Klement" <[email protected]> ha scritto nel messaggio 
> news:mailman.28056.1273859786.2580.linux5250-Zwy7GipZuJitq2lpoERdew@public.gmane.org
>> hi James,
>>
>>> My changes aren't exactly huge, so it probably doesn't matter which
>>> method we use.  I figured people would rather keep the structure
>>> intact.
>>
>> Seems to me, the problem is that we used pointers in our structure that 
>> were the same name as the system APIs (accept and connect).  When the 
>> macro runs, it renames accept to naccept and connect to nconnect, and 
>> then our code doesn't work anymore.
>>
>> How else would you fix that?  If you disable the macro, then it's calling 
>> the wrong system API, right?  Otherwise, you'd have to be careful to have 
>> it enabled in some places and disabled in other places...   which seems a 
>> lot more complicated than renaming the pointers.
>>
>>
>>> conf.c: In function 'tn5250_config_replacedata':
>>> conf.c:716: warning: incompatible implicit declaration of built-in
>>> function 'snprintf'
>>
>> Hmm... I didn't get any snprintf, strncpy, strlen, strcpy or vsyslog 
>> errors.
>>
>> I did get this malloc one that you also describe:
>>
>>> ld: 0711-317 ERROR: Undefined symbol: .rpl_malloc
>>>
>>> Do you have any of these errors?  Did you pass any options to 
>>> ./configure?
>>> Do you have the following line in config.log or config.h:
>>>
>>> #define malloc rpl_malloc
>>>
>>
>> This appears to be caused by the fact that the AIX malloc() function is 
>> not 100% compliant with the GNU malloc function.  So autoconf creates 
>> that macro to rename malloc to rpl_malloc with the anticipation that we 
>> (the tn5250 project) will provide a function called rpl_malloc() that 
>> replaces malloc() to make it GNU compatible.
>>
>> As far as I can tell, the only difference between the GNU malloc() and 
>> the AIX one is what happens when you try to call it as malloc(0). And 
>> tn5250 never does that -- so the difference doesn't matter to us.
>>
>> So I just commented out that macro in config.h.
>>
>>
>>>
>>> Maybe getpwuid() isn't working as expected?
>>>
>>
>> No... it turns out my problem with .tn5250rc (which, I'm ashamed to say, 
>> took me _hours_ to figure out) was due to the fact that my .tn5250rc was 
>> in EBCDIC and of course PASE programs only understand ASCII.
>>
>> But, tn5250 was reporting a spurious error of "file not found" instead of 
>> telling me the actual problem.  So...  it took longer than it should've 
>> to discover.
>>
>> But at this point, I _do_ have tn5250 running successfully in PASE. 
>> Well... sort of, anyway.  It doesn't seem to accept any keyboard input, 
>> and I don't know why.  But it doesn't give me errors, and it displays the 
>> sign-on screen without problems.
>>
>> I'm running GCC 4.1.1 compiled for AIX 5.2.  I don't remember exactly 
>> where I got it, I've had it on i for years and years..   I probably 
>> originally got it from UCLA's AIXPDSLIB.
>
> 


-- 
This is the Linux 5250 Development Project (LINUX5250) mailing list
To post a message email: LINUX5250-Zwy7GipZuJhWk0Htik3J/[email protected]
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/linux5250
or email: LINUX5250-request-Zwy7GipZuJhWk0Htik3J/[email protected]
Before posting, please take a moment to review the archives
at http://archive.midrange.com/linux5250.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.