[Prev] [Contents] [Next]

Common Pthread user errors

Can't find header files pthread.h or qp0ztype.h or qp0zptha.h

If you find that your compilation fails because the system header files required to compile a threaded program or to use the threaded interfaces cannot be found, there could be one of several causes:

KULACK/QCSRC/MYPGM line 5: Unable to find #include file *LIBL/H(PTHREAD).
You might have one of two problems. Either your system does not have the C header files for openness (the QSYSINC library) installed, you're on a V4R2 system, and you don't have the PTF installed (PTF number 5769SS1-J664741)which provides the pthread header files, or you're compile command is not searching the correct locations for system header files. Either install the Openness includes and the QSYSINC library, install the PTF support (PTF number 5769SS1-J664741) for kernel threads header files, or correct your search paths or library list.
QSYSINC/H/PTHREAD line 48: Unable to find #include file QCPA/H(PTHREAD).
QSYSINC/H/PTHREAD line 60: #error "#ifndef _MULTI_THREADED"             
QSYSINC/H/PTHREAD line 61: #error "#ifndef QP0Z_CPA_THREADS_PRESENT" 
You have forgotten to define the _MULTI_THREADED preprocessor symbol. Use the C preprocessor statement `#define _MULTI_THREADED' in your application, or define _MULTI_THREADED on the CRTCMOD or other compile command that you use to compile your modules. Since the CPA toolkit supported threads prior to kernel threads being introduced on the AS/400, if you do not define _MULTI_THREADED when compiling your C modules, the system will attempt to compile your application using the CPA header files. The recommended threads model is kernel threads. You should define _MULTI_THREADED when compiling your application.
QCPA/H/PTHREAD line 171: Unable to find #include file *LIBL/H(QP0ZTYPE).
QCPA/H/PTHREAD line 183: Unable to find #include file *LIBL/H(QP0ZPTHA).
You have forgotten to define the _MULTI_THREADED preprocessor symbol. Use the C preprocessor statement `#define _MULTI_THREADED' in your application, or define _MULTI_THREADED on the CRTCMOD or other compile command that you use to compile your modules. Since the CPA toolkit supported threads prior to kernel threads being introduced on the AS/400, if you do not define _MULTI_THREADED when compiling your C modules, the system will attempt to compile your application using the CPA header files. The recommended threads model is kernel threads. You should define _MULTI_THREADED when compiling your application.


[Prev] [Contents] [Next]
Copyright © 1998, IBM Corporation. All rights reserved.
Comments? Contact
rchthrds@us.ibm.com