[ python-Bugs-1007223 ] SGI (IRIX6.5.24) Problems building nismodule.c

SourceForge.net noreply at sourceforge.net
Thu Aug 12 15:51:50 CEST 2004


Bugs item #1007223, was opened at 2004-08-11 14:31
Message generated for change (Comment added) made by loewis
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1007223&group_id=5470

Category: Build
Group: Python 2.4
Status: Open
Resolution: None
Priority: 5
Submitted By: Maik Hertha (mhertha)
Assigned to: Nobody/Anonymous (nobody)
Summary: SGI (IRIX6.5.24) Problems building nismodule.c

Initial Comment:
Building python on SGI Irix 6.5.24 with MIPSpro
Compilers Version 7.3.1.3m with:
./configure
gmake
gmake test

The test shows that the test_nis.py failed.
Running python from the build location:
./python
>>> import nis
>>> nis.maps()
raises a nis.error "No NIS master found for any map".

The Makefile has a LIBS-line (#151):
LIBS=-lsocket -lnsl -ldl -lpthread -lmpz

This line could be shortened to:
LIBS=-lpthread

After
gmake distclean
./configure
-> cleaning up the LIBS-line in Makefile
gmake
gmake test

The nismodule could be successfull used.

Why?
Library libmpz isn't already installed on Irix 6.5.xx
Library libdl isn't used for anything.
Libraries libsocket and libnsl can't access the NIS.

See intro(3) man-page
....
(3N)  There are actually 3 types of networking in IRIX.

           1)  BSD sockets implemented in the kernel,
along with SUN RPC and
           NIS (YP).  The functions that implement
these calls are in libc
           [see (3C) section above].

           2)  SVR4-style STREAMS/TLI networking (not
sockets), along with
           SVR4-style RPC.  SVR4-style RPC doesn't work
with sockets, only
           with the TLI.  Also, SVR4-style networking
does not support NIS
           [see intro(3N)].  The functions that
implement these calls are in
           libnsl, and to use them, the code must be
compiled with :

                cc -D_SVR4_TIRPC  prog.c -lnsl

           3)  SVR4 emulation of sockets.  This is an
implementation of
           sockets entirely in a library (libsocket)
that sits on top of
           libnsl.  There are no header file
differences for libsocket.  The
           MIPS ABI-compliant programs that use sockets
must (in order to be
           ABI-compliant) link with libsocket.  There
is no NIS support for
           programs linked with libsocket [see
intro(3N)].  To compile such a
           program, use:

                cc prog.c -lsocket

     (3Y) Remote Procedure Call (RPC) and NIS support
routines.  These
          functions are in the standard C library libc,
already mentioned.
...

Unfortunately I'm not a configure expert so I could
only report the problem and a solution.

--maik./

----------------------------------------------------------------------

>Comment By: Martin v. Löwis (loewis)
Date: 2004-08-12 15:51

Message:
Logged In: YES 
user_id=21627

Can you investigate in config.log where it refers to mpz for
the first time? The configure file does never refer to mpz
explicitly. Could it be that you have some environment
variable set that influences configure?

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1007223&group_id=5470


More information about the Python-bugs-list mailing list