• External References Not resolved to any User/System Library

    From Mia Oreskovic@21:1/5 to All on Thu Feb 25 01:33:58 2021
    I compiled with C compiler in Guardian environment on NSX-H program that is using following functions connect_nw, recv_nw, send_nw, socket_nw and socket_set_inet_name.
    NonStop TCP/IP Programming Manual says to use those functions you need to include "in.h", "netdb.h" and "socket.h" which I did.
    For example from manual:
    socket_set_inet_name
    The socket_set_inet_name function specifies the name of the NonStop TCP/IP or TCP6SAM process that thesocket library is going to open.
    C Synopsis
    #include "netdb.h"
    void socket_set_inet_name (name_ptr);
    char *name_ptr;

    But after compiling when I try to run it I get this:

    External References Not Resolved to Any User/System Library:
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> connect_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> recv_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> send_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_set_inet_name (PROC)
    and program abends on calling
    socket_set_inet_name(ip_process);

    \TANDEM.$:1:108:1283121772 - *** Run-time Error 003 *** \TANDEM.$:1:108:1283121772 - Instruction failure
    \TANDEM.$:1:108:1283121772 - From main + %353, UC.00
    \TANDEM.$:1:108:1283121772 - _MAIN + %31, UC.00

    Has anyone had this problem and idea how to solve it ? I'm new to this and I would appreciate every help I get.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Keith Dick@21:1/5 to Mia Oreskovic on Thu Feb 25 10:06:56 2021
    On Thursday, February 25, 2021 at 1:34:00 AM UTC-8, Mia Oreskovic wrote:
    I compiled with C compiler in Guardian environment on NSX-H program that is using following functions connect_nw, recv_nw, send_nw, socket_nw and socket_set_inet_name.
    NonStop TCP/IP Programming Manual says to use those functions you need to include "in.h", "netdb.h" and "socket.h" which I did.
    For example from manual:
    socket_set_inet_name
    The socket_set_inet_name function specifies the name of the NonStop TCP/IP or TCP6SAM process that thesocket library is going to open.
    C Synopsis
    #include "netdb.h"
    void socket_set_inet_name (name_ptr);
    char *name_ptr;

    But after compiling when I try to run it I get this:

    External References Not Resolved to Any User/System Library: Di
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> connect_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> recv_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> send_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_set_inet_name (PROC)
    and program abends on calling
    socket_set_inet_name(ip_process);

    \TANDEM.$:1:108:1283121772 - *** Run-time Error 003 *** \TANDEM.$:1:108:1283121772 - Instruction failure
    \TANDEM.$:1:108:1283121772 - From main + %353, UC.00 \TANDEM.$:1:108:1283121772 - _MAIN + %31, UC.00

    Has anyone had this problem and idea how to solve it ? I'm new to this and I would appreciate every help I get.

    Did you include directions in your compile or link commands to use one of the libraries specified in the Library Routines part of the TCP/IP Programming Manual? The problem clearly is that the linker was not told to use a library that contains the
    functions your are calling.

    I guess an NSX-H system refers to some model of the NonStop X system, and the copy of the TCP/IP Programming Manual I have does not seem to mention the proper name for any system that recent. I see that you said you used the C compiler. Do you mean the
    old TNS C compiler (that produces code 100 object files), or did you really use the native C compiler CCOMP (that produces code 500 object files)? The library to use will depend on which compiler.

    If you used the native mode CCOMP on a NonStop X system, I believe you should link with $SYSTEM.ZTCPIP.LNETINDN. That is a static linking library. If you want to use the DLL instead, I don't know off the top of my head how to tell the linker that.
    Maybe someone else will answer with that detail.

    $SYSTEM.ZTCPIP.LNETINDN might only be appropriate for a CRE-independent program. I believe that is the default for the native mode C compiler on NonStop X, but I did not check to see whether that is true.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kannan MJ@21:1/5 to Mia Oreskovic on Thu Feb 25 21:12:36 2021
    On Thursday, February 25, 2021 at 3:04:00 PM UTC+5:30, Mia Oreskovic wrote:
    I compiled with C compiler in Guardian environment on NSX-H program that is using following functions connect_nw, recv_nw, send_nw, socket_nw and socket_set_inet_name.
    NonStop TCP/IP Programming Manual says to use those functions you need to include "in.h", "netdb.h" and "socket.h" which I did.
    For example from manual:
    socket_set_inet_name
    The socket_set_inet_name function specifies the name of the NonStop TCP/IP or TCP6SAM process that thesocket library is going to open.
    C Synopsis
    #include "netdb.h"
    void socket_set_inet_name (name_ptr);
    char *name_ptr;

    But after compiling when I try to run it I get this:

    External References Not Resolved to Any User/System Library:
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> connect_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> recv_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> send_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_set_inet_name (PROC)
    and program abends on calling
    socket_set_inet_name(ip_process);

    \TANDEM.$:1:108:1283121772 - *** Run-time Error 003 *** \TANDEM.$:1:108:1283121772 - Instruction failure
    \TANDEM.$:1:108:1283121772 - From main + %353, UC.00 \TANDEM.$:1:108:1283121772 - _MAIN + %31, UC.00

    Has anyone had this problem and idea how to solve it ? I'm new to this and I would appreciate every help I get.

    Please check the bind command that makes this executable to confirm that it includes one of the following libraries depending on large or wide mode of compilation:

    Large: LIBINETL
    Wide: LIBINETW
    Large: LNETINDL
    Wide: LNETINDW

    These libraries contains the above unsatisfied symbols in it. Use the appropriate one.

    Regards,
    Kannan.MJ

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Keith Dick@21:1/5 to Mia Oreskovic on Mon Mar 8 11:47:46 2021
    On Monday, March 8, 2021 at 10:18:36 AM UTC-8, Mia Oreskovic wrote:
    Dana četvrtak, 25. veljače 2021. u 19:06:57 UTC+1 korisnik rkd...@gmail.com napisao je:
    On Thursday, February 25, 2021 at 1:34:00 AM UTC-8, Mia Oreskovic wrote:
    I compiled with C compiler in Guardian environment on NSX-H program that is using following functions connect_nw, recv_nw, send_nw, socket_nw and socket_set_inet_name.
    NonStop TCP/IP Programming Manual says to use those functions you need to include "in.h", "netdb.h" and "socket.h" which I did.
    For example from manual:
    socket_set_inet_name
    The socket_set_inet_name function specifies the name of the NonStop TCP/IP or TCP6SAM process that thesocket library is going to open.
    C Synopsis
    #include "netdb.h"
    void socket_set_inet_name (name_ptr);
    char *name_ptr;

    But after compiling when I try to run it I get this:

    External References Not Resolved to Any User/System Library: Di
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> connect_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> recv_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> send_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_set_inet_name (PROC)
    and program abends on calling
    socket_set_inet_name(ip_process);

    \TANDEM.$:1:108:1283121772 - *** Run-time Error 003 *** \TANDEM.$:1:108:1283121772 - Instruction failure \TANDEM.$:1:108:1283121772 - From main + %353, UC.00 \TANDEM.$:1:108:1283121772 - _MAIN + %31, UC.00

    Has anyone had this problem and idea how to solve it ? I'm new to this and I would appreciate every help I get.
    Did you include directions in your compile or link commands to use one of the libraries specified in the Library Routines part of the TCP/IP Programming Manual? The problem clearly is that the linker was not told to use a library that contains the
    functions your are calling.

    I guess an NSX-H system refers to some model of the NonStop X system, and the copy of the TCP/IP Programming Manual I have does not seem to mention the proper name for any system that recent. I see that you said you used the C compiler. Do you mean
    the old TNS C compiler (that produces code 100 object files), or did you really use the native C compiler CCOMP (that produces code 500 object files)? The library to use will depend on which compiler.

    If you used the native mode CCOMP on a NonStop X system, I believe you should link with $SYSTEM.ZTCPIP.LNETINDN. That is a static linking library. If you want to use the DLL instead, I don't know off the top of my head how to tell the linker that.
    Maybe someone else will answer with that detail.

    $SYSTEM.ZTCPIP.LNETINDN might only be appropriate for a CRE-independent program. I believe that is the default for the native mode C compiler on NonStop X, but I did not check to see whether that is true.
    I didn't include link command, but I did include pragme directive (extensions) a per TCP/IP manual( command C /IN in_source_file/ object file, extensions, symbols, runnable ). I'm using old TNS C compiler, which I regulary use to compile others C
    programs. I believe that H in NSX-H represents series of Non Stop X system. Can you give me examples of how to use $SYSTEM.ZTCPIP.LNETINDN to link libraries correctly?

    You can use the NETINDN library by adding a SEARCH pragma to the C compiler command line. It could look like this:

    C / IN in_source_file / object_file; extensions, symbols, runnable, search $system.ztcpip.lnetindn

    If I remember correctly, the TCP/IP manual named several libraries, and the correct one to use depends on whether you are using the CRE and which memory model you are using. Make sure you match all those things properly. If you have trouble
    understanding what combinations are suitable, ask again and we'll be happy to try to help.

    It also is possible to compile the program without RUNNABLE and use the BIND utility to create a runnable program from the object file created by the compile. In that case, you would specify the library to use with one of the BIND commands, but if you
    are happy creating the runnable program directly from the C command, what I show above should be all you need.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mia Oreskovic@21:1/5 to All on Mon Mar 8 10:18:34 2021
    Dana četvrtak, 25. veljače 2021. u 19:06:57 UTC+1 korisnik rkd...@gmail.com napisao je:
    On Thursday, February 25, 2021 at 1:34:00 AM UTC-8, Mia Oreskovic wrote:
    I compiled with C compiler in Guardian environment on NSX-H program that is using following functions connect_nw, recv_nw, send_nw, socket_nw and socket_set_inet_name.
    NonStop TCP/IP Programming Manual says to use those functions you need to include "in.h", "netdb.h" and "socket.h" which I did.
    For example from manual:
    socket_set_inet_name
    The socket_set_inet_name function specifies the name of the NonStop TCP/IP or TCP6SAM process that thesocket library is going to open.
    C Synopsis
    #include "netdb.h"
    void socket_set_inet_name (name_ptr);
    char *name_ptr;

    But after compiling when I try to run it I get this:

    External References Not Resolved to Any User/System Library: Di
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> connect_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> recv_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> send_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_set_inet_name (PROC)
    and program abends on calling
    socket_set_inet_name(ip_process);

    \TANDEM.$:1:108:1283121772 - *** Run-time Error 003 *** \TANDEM.$:1:108:1283121772 - Instruction failure \TANDEM.$:1:108:1283121772 - From main + %353, UC.00 \TANDEM.$:1:108:1283121772 - _MAIN + %31, UC.00

    Has anyone had this problem and idea how to solve it ? I'm new to this and I would appreciate every help I get.
    Did you include directions in your compile or link commands to use one of the libraries specified in the Library Routines part of the TCP/IP Programming Manual? The problem clearly is that the linker was not told to use a library that contains the
    functions your are calling.

    I guess an NSX-H system refers to some model of the NonStop X system, and the copy of the TCP/IP Programming Manual I have does not seem to mention the proper name for any system that recent. I see that you said you used the C compiler. Do you mean the
    old TNS C compiler (that produces code 100 object files), or did you really use the native C compiler CCOMP (that produces code 500 object files)? The library to use will depend on which compiler.

    If you used the native mode CCOMP on a NonStop X system, I believe you should link with $SYSTEM.ZTCPIP.LNETINDN. That is a static linking library. If you want to use the DLL instead, I don't know off the top of my head how to tell the linker that.
    Maybe someone else will answer with that detail.

    $SYSTEM.ZTCPIP.LNETINDN might only be appropriate for a CRE-independent program. I believe that is the default for the native mode C compiler on NonStop X, but I did not check to see whether that is true.

    I didn't include link command, but I did include pragme directive (extensions) a per TCP/IP manual( command C /IN in_source_file/ object file, extensions, symbols, runnable ). I'm using old TNS C compiler, which I regulary use to compile others C
    programs. I believe that H in NSX-H represents series of Non Stop X system. Can you give me examples of how to use $SYSTEM.ZTCPIP.LNETINDN to link libraries correctly?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mia Oreskovic@21:1/5 to All on Fri Apr 2 05:12:07 2021
    Dana ponedjeljak, 8. ožujka 2021. u 20:47:47 UTC+1 korisnik rkd...@gmail.com napisao je:
    On Monday, March 8, 2021 at 10:18:36 AM UTC-8, Mia Oreskovic wrote:
    Dana četvrtak, 25. veljače 2021. u 19:06:57 UTC+1 korisnik rkd...@gmail.com napisao je:
    On Thursday, February 25, 2021 at 1:34:00 AM UTC-8, Mia Oreskovic wrote:
    I compiled with C compiler in Guardian environment on NSX-H program that is using following functions connect_nw, recv_nw, send_nw, socket_nw and socket_set_inet_name.
    NonStop TCP/IP Programming Manual says to use those functions you need to include "in.h", "netdb.h" and "socket.h" which I did.
    For example from manual:
    socket_set_inet_name
    The socket_set_inet_name function specifies the name of the NonStop TCP/IP or TCP6SAM process that thesocket library is going to open.
    C Synopsis
    #include "netdb.h"
    void socket_set_inet_name (name_ptr);
    char *name_ptr;

    But after compiling when I try to run it I get this:

    External References Not Resolved to Any User/System Library: Di
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> connect_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> recv_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> send_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_set_inet_name (PROC)
    and program abends on calling
    socket_set_inet_name(ip_process);

    \TANDEM.$:1:108:1283121772 - *** Run-time Error 003 *** \TANDEM.$:1:108:1283121772 - Instruction failure \TANDEM.$:1:108:1283121772 - From main + %353, UC.00 \TANDEM.$:1:108:1283121772 - _MAIN + %31, UC.00

    Has anyone had this problem and idea how to solve it ? I'm new to this and I would appreciate every help I get.
    Did you include directions in your compile or link commands to use one of the libraries specified in the Library Routines part of the TCP/IP Programming Manual? The problem clearly is that the linker was not told to use a library that contains the
    functions your are calling.

    I guess an NSX-H system refers to some model of the NonStop X system, and the copy of the TCP/IP Programming Manual I have does not seem to mention the proper name for any system that recent. I see that you said you used the C compiler. Do you mean
    the old TNS C compiler (that produces code 100 object files), or did you really use the native C compiler CCOMP (that produces code 500 object files)? The library to use will depend on which compiler.

    If you used the native mode CCOMP on a NonStop X system, I believe you should link with $SYSTEM.ZTCPIP.LNETINDN. That is a static linking library. If you want to use the DLL instead, I don't know off the top of my head how to tell the linker that.
    Maybe someone else will answer with that detail.

    $SYSTEM.ZTCPIP.LNETINDN might only be appropriate for a CRE-independent program. I believe that is the default for the native mode C compiler on NonStop X, but I did not check to see whether that is true.
    I didn't include link command, but I did include pragme directive (extensions) a per TCP/IP manual( command C /IN in_source_file/ object file, extensions, symbols, runnable ). I'm using old TNS C compiler, which I regulary use to compile others C
    programs. I believe that H in NSX-H represents series of Non Stop X system. Can you give me examples of how to use $SYSTEM.ZTCPIP.LNETINDN to link libraries correctly?
    You can use the NETINDN library by adding a SEARCH pragma to the C compiler command line. It could look like this:

    C / IN in_source_file / object_file; extensions, symbols, runnable, search $system.ztcpip.lnetindn

    If I remember correctly, the TCP/IP manual named several libraries, and the correct one to use depends on whether you are using the CRE and which memory model you are using. Make sure you match all those things properly. If you have trouble
    understanding what combinations are suitable, ask again and we'll be happy to try to help.

    It also is possible to compile the program without RUNNABLE and use the BIND utility to create a runnable program from the object file created by the compile. In that case, you would specify the library to use with one of the BIND commands, but if you
    are happy creating the runnable program directly from the C command, what I show above should be all you need.

    Thanks for the advice to use bind utiliy. I've managed to solve the issue.

    Regards,
    Mia

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mia Oreskovic@21:1/5 to All on Fri Apr 2 05:11:01 2021
    Dana petak, 26. veljače 2021. u 06:12:37 UTC+1 korisnik mjkan...@gmail.com napisao je:
    On Thursday, February 25, 2021 at 3:04:00 PM UTC+5:30, Mia Oreskovic wrote:
    I compiled with C compiler in Guardian environment on NSX-H program that is using following functions connect_nw, recv_nw, send_nw, socket_nw and socket_set_inet_name.
    NonStop TCP/IP Programming Manual says to use those functions you need to include "in.h", "netdb.h" and "socket.h" which I did.
    For example from manual:
    socket_set_inet_name
    The socket_set_inet_name function specifies the name of the NonStop TCP/IP or TCP6SAM process that thesocket library is going to open.
    C Synopsis
    #include "netdb.h"
    void socket_set_inet_name (name_ptr);
    char *name_ptr;

    But after compiling when I try to run it I get this:

    External References Not Resolved to Any User/System Library:
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> connect_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> recv_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> send_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_nw (PROC)
    Prg: \TANDEM.$CERT.CPMN.HSM002 -> socket_set_inet_name (PROC)
    and program abends on calling
    socket_set_inet_name(ip_process);

    \TANDEM.$:1:108:1283121772 - *** Run-time Error 003 *** \TANDEM.$:1:108:1283121772 - Instruction failure \TANDEM.$:1:108:1283121772 - From main + %353, UC.00 \TANDEM.$:1:108:1283121772 - _MAIN + %31, UC.00

    Has anyone had this problem and idea how to solve it ? I'm new to this and I would appreciate every help I get.
    Please check the bind command that makes this executable to confirm that it includes one of the following libraries depending on large or wide mode of compilation:

    Large: LIBINETL
    Wide: LIBINETW
    Large: LNETINDL
    Wide: LNETINDW

    These libraries contains the above unsatisfied symbols in it. Use the appropriate one.

    Regards,
    Kannan.MJ

    This was very helpful. Using: LNETINDL with bind solved the problem with externals. Thank you.

    Regards,
    Mia

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)