Has the DLL option changed in the new compiler?
Do you know if the DLL option in C has changed between the old and new compilers (C/C++ for OS/390 r10.2 to C/C++ for z/OS r1.6)? I have a C program that compiles as a DLL with the old compiler and there is no message that the LONGNAME is set. However, with the new compiler there is a message that the DLL option forces the LONGNAME. I tried to override the LONGNAME with NOLONGNAME but the compiler insists. I also found a note in the manual that confirms this. This means that anybody compiling a C program as a DLL gets LONGNAMEs and therefore must become a PDSE load.
When you register, you’ll also receive targeted alerts from my team of editorial writers and independent industry experts with the latest news, tips, and advice to help you do your job more efficiently and effectively. Our goal is to keep you informed on the hottest topics and biggest challenges faced by IT professionals today working with data center technologies.
Margie Semilof, Editorial Director
In researching this question, I have not been able to find out that anything has changed regarding this option for the OS/390 V2.10 C/C++ compiler. On the other hand, you may have changed the C/C++ compiler you're using, perhaps without knowing it. Starting with z/OS V1.2, the ISO C/C++ compiler is shipped with z/OS, in addition to the OS/390 V2.10 version of the C/C++ compiler, and, as a long term strategy, you're recommended to use this new compiler (see
z/OS V1.6 Migration: Section 6.1.3 -- Removing your dependency on the OS/390 V1R10 level of the C/C++ compilers). If you are using the new compiler, that may be the reason for the compiler option change.
If you are still using the old compiler, could you send the message number of the message you're seeing? That may help me pinpoint the problem.
Dig Deeper
-
People who read this also read...
This was first published in December 2005