
nobody at sourceforge
Mar 5, 2001, 3:14 AM
Post #5 of 5
(34 views)
Permalink
|
|
[ python-Bugs-231439 ] python and Python interfaces should use cc -G for so's
[In reply to]
|
|
Bugs #231439, was updated on 2001-02-07 10:52 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=105470&aid=231439&group_id=5470 Category: Build Group: Platform-specific Status: Open Priority: 5 Submitted By: Larry Rosenman Assigned to: Martin v. Löwis Summary: python and Python interfaces should use cc -G for so's Initial Comment: the Python build environment should use cc -G for it's shared libs. This is true at *LEAST* on UnixWare. The ld man page calls this out. The PostgreSQL interface build had to be modified because of this. If you need a shell account on a UnixWare 7 box, I can arrange same. LER ---------------------------------------------------------------------- Comment By: Martin v. Löwis Date: 2001-03-05 02:14 Message: Logged In: YES user_id=21627 Can you please try adding -Wl,-Bexport into LINKFORSHARED? This is essentially the same as SCO_SV, except that -Bdynamic -dy appear to be the default on Unixware. This option will cause symbols in the python executable to be exported to shared libraries. By default, only shared libraries export all their symbols; for executables, -Bhide is the default. That should cause _PyObject_New to be available. ---------------------------------------------------------------------- Comment By: Neil Schemenauer Date: 2001-03-03 23:37 Message: Logged In: YES user_id=35752 Martin, with your patch I get: ImportError: Python 2.1b1 (#1, Mar 4 2001, 01:30:18) [C] on unixware5 Type "copyright", "credits" or "license" for more information. >>> import zlib Traceback (most recent call last): File "<stdin>", line 1, in ? dynamic linker: ./python: relocation error: symbol not found: _PyObject_New; referenced from: /home/nas/Python-2.1b1/build/lib.unixware-5-i386-2.1/zlib.so ---------------------------------------------------------------------- Comment By: Larry Rosenman Date: 2001-03-02 18:00 Message: Logged In: YES user_id=36452 What about -KPIC -Ki486 -belf -Wl,-Bexport? This is what is currently used on SCO_SV I'd lose the -Ki486 -belf as they are not needed for UnixWare. You can look at man pages at: http://uw7doc.sco.com or my site at: http://www.lerctr.org:457 I also gave neil (nas) a login, and can do the same for you. LER ---------------------------------------------------------------------- Comment By: Martin v. Löwis Date: 2001-03-02 15:40 Message: Logged In: YES user_id=21627 OK, upload fails, so try this inline. You may succeed with cut-n-paste from the HTML source Index: configure.in =================================================================== RCS file: /cvsroot/python/python/dist/src/configure.in,v retrieving revision 1.207 diff -u -r1.207 configure.in --- configure.in 2001/02/27 04:45:05 1.207 +++ configure.in 2001/03/02 23:36:10 @@ -576,6 +576,11 @@ else LDSHARED="ld -Bshareable ${LDFLAGS}" fi;; + UnixWare*) + if test "$GCC" = "yes" + then LDSHARED='$(CC) -shared' + else LDSHARED="cc -G"; + fi ;; SCO_SV*) LDSHARED="cc -G -KPIC -Ki486 -belf -Wl,-Bexport";; Monterey*) LDSHARED="cc -G -dy -Bdynamic -Bexport -L/usr/lib/ia64l64";; CYGWIN*) LDSHARED="gcc -shared -Wl,--enable-auto-image-base";; @@ -601,6 +606,11 @@ BSD/OS*/4*) CCSHARED="-fpic";; OpenBSD*) CCSHARED="-fpic";; FreeBSD*|NetBSD*) CCSHARED="-fPIC";; + UnixWare*) + if test "$GCC" = "yes" + then LDSHARED='$(CC) -fPIC' + else LDSHARED="cc -KPIC"; + fi ;; SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";; Monterey*) CCSHARED="-G";; IRIX*/6*) case $CC in ---------------------------------------------------------------------- Comment By: Martin v. Löwis Date: 2001-03-02 15:38 Message: Logged In: YES user_id=21627 Can you provide an example compiler invocation to see what options are actually used? One -c invocation and one linker invocation would be good. What about -KPIC -Ki486 -belf -Wl,-Bexport? This is what is currently used on SCO_SV. Can you please try the attached patch (patch1 if upload succeeds)? ---------------------------------------------------------------------- Comment By: Larry Rosenman Date: 2001-02-10 16:41 Message: uname -u is invalid. $ uname -u UX:uname: ERROR: Illegal option -- u UX:uname: TO FIX: Usage: uname parameter_name uname -f uname [-acdilmnprsvAX] uname [-S system name] $ uname -a UnixWare lerlaptop 5 7.1.1 i386 x86at SCO UNIX_SVR5 $ uname -s UnixWare $ uname -r 5 $ uname -v 7.1.1 $ uname -a UnixWare lerlaptop 5 7.1.1 i386 x86at SCO UNIX_SVR5 $ ---------------------------------------------------------------------- Comment By: Neil Schemenauer Date: 2001-02-10 12:46 Message: What does "uname -u" say for UnixWare? ---------------------------------------------------------------------- Comment By: A.M. Kuchling Date: 2001-02-08 09:23 Message: Assigning to Neil. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=105470&aid=231439&group_id=5470
|