Originally posted by: SystemAdmin
http://original post failed to materialize. Sorry for any duplication. I am attempting to use IOCP with xlC on AIX 6.1 TL 6. My build is failing to link, unable to find CreateIoCompletionPort or GetQueuedCompletionStatus
oslevel -r: 6100-06
iocp is installed:
$ lslpp -l |grep -i iocp
bos.iocp.rte 6.1.6.0 COMMITTED I/O Completion Ports API
bos.iocp.rte 6.1.6.0 COMMITTED I/O Completion Ports API
xlC is installed:
$ lslpp -l |grep -i xlc
xlC.adt.include 11.1.0.0 COMMITTED C Set ++ Application
xlC.aix61.rte 11.1.0.1 COMMITTED XL C/C++ Runtime for AIX 6.1
xlC.cpp 9.0.0.0 COMMITTED C for AIX Preprocessor
xlC.msg.en_US.cpp 9.0.0.0 COMMITTED C for AIX Preprocessor
xlC.msg.en_US.rte 11.1.0.1 COMMITTED XL C/C++ Runtime
xlC.rte 11.1.0.1 COMMITTED XL C/C++ Runtime
xlC.sup.aix50.rte 9.0.0.1 COMMITTED XL C/C++ Runtime for AIX 5.2
smitty shows IOCP0 as available
Object file creation shows no errors
Legacy AIO is enabled via _AIX_AIO_SOURCE,
Link fails whether invoked as cc or xlC, and both with and without -lc:
cc -DAIX -D_AIO_AIX_SOURCE -o foo
object files -lpthread -lC -lm
ld: 0711-317 ERROR: Undefined symbol: .CreateIoCompletionPort
ld: 0711-317 ERROR: Undefined symbol: .GetQueuedCompletionStatus
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
make: 1254-004 The error code from the last command is 8.
I did a brute force, find/grep traversal from root and didn't find a library containing the IOCP routines. I suspect that there is an additional package that needs to be installed, but I can't find any reference to one on line.
Any ideas?
Jack
#AIX-Forum