Martin v. L=F6wis wrote: > Chris Johns <cjohns@cybertec.com.au> writes: >=20 >=20 >>Porting Python to the open source realtime OS called RTEMS I get a >>compile error on line 2797 of socketmodule.c.=20 >=20 >=20 > In my copy, this is the line >=20 > char packed[MAX(sizeof(struct in_addr), sizeof(struct in6_addr))]; ^^ I would assume the marked code is for IPV6 so needs to be protected by=20 ENABLE_IPV6, for example: #ifdef ENABLE_IPV6 char packed[MAX(sizeof(struct in_addr), sizeof(struct in6_addr))]; #else char packed[sizeof(struct in_addr)]; #endif >=20 > Can you report more on the nature of the compile error (such as its > *message*)? >=20 (I do not use the Python build system as I have to cross-compile and so u= se an=20 automake makefile in a RISCOS type layout) Sure. The output is from gcc-3.2.3: m68k-rtems-gcc -DHAVE_CONFIG_H -I. -I../python-cvs/dist/src/RTEMS -I.=20 -I../python-cvs/dist/src/RTEMS/../Include=20 -I../python-cvs/dist/src/RTEMS/../Python -I/opt/rtems/m68k-rtems/lib/incl= ude=20 -m5200 -O4 -g -DPLATFORM=3D"\"RTEMS (m5200)\"" -c -o socketmodule.o `tes= t -f=20 '../python-cvs/dist/src/RTEMS/../Modules/socketmodule.c' || echo=20 '../python-cvs/dist/src/RTEMS/'`../python-cvs/dist/src/RTEMS/../Modules/s= ocketmodule.c =2E./python-cvs/dist/src/Modules/socketmodule.c: In function `socket_inet= _pton': =2E./python-cvs/dist/src/Modules/socketmodule.c:2797: sizeof applied to a= n=20 incomplete type =2E./python-cvs/dist/src/Modules/socketmodule.c:2797: sizeof applied to a= n=20 incomplete type =2E./python-cvs/dist/src/Modules/socketmodule.c:2816: sizeof applied to a= n=20 incomplete type =2E./python-cvs/dist/src/Modules/socketmodule.c: In function `socket_inet= _ntop': =2E./python-cvs/dist/src/Modules/socketmodule.c:2835: `INET_ADDRSTRLEN' u= ndeclared=20 (first use in this function) =2E./python-cvs/dist/src/Modules/socketmodule.c:2835: (Each undeclared id= entifier=20 is reported only once =2E./python-cvs/dist/src/Modules/socketmodule.c:2835: for each function i= t appears=20 in.) =2E./python-cvs/dist/src/Modules/socketmodule.c:2835: `INET6_ADDRSTRLEN' = undeclared (first use in this function) =2E./python-cvs/dist/src/Modules/socketmodule.c:2851: sizeof applied to a= n=20 incomplete type >=20 >>Should this code check ENABLE_IPV6 as IPV6 is not support on RTEMS yet.= >=20 >=20 > (assuming this is a question): I'm unsure. It should not cause a > compile time failure, period. >=20 Sorry, it was a question. See above. >=20 >>Also where is INET_ADDRSTRLEN suppose to be defined ? >=20 > <netinet/in.h> >=20 Thanks. The RTEMS TCP/IP stack is an old port of the FreeBSD stack and do= es not=20 have this. The current FreeBSD does so I will fix RTEMS. I will not add=20 INET6_ADDRSTRLEN as no other IPV6 support is currently provided. --=20 Chris Johns, cjohns at cybertec.com.au
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4