Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 199919 - can't bootstrap python on AIX 5.3
Summary: can't bootstrap python on AIX 5.3
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: All AIX
: High normal (vote)
Assignee: Gentoo non-Linux Team
URL: http://article.gmane.org/gmane.linux....
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-21 20:57 UTC by Jeremy Olexa (darkside) (RETIRED)
Modified: 2007-12-10 09:30 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2007-11-21 20:57:56 UTC
See posted URL. I want to take this issue out of the mailing list and put it here.

/home/jolexa/aix/trunk/buildroot/python/Python-2.4.2/Modules/ld_so_aix gcc -pthread -bI:Modules/python.exp -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes build/temp.aix-5.3-2.4/_tkinter.o build/temp.aix-5.3-2.4/tkappinit.o -L/usr/X11R6/lib64 -L/usr/X11R6/lib -L/home/jolexa/aix/prefix_tmp//prefix-launcher-1pre.jolexa/powerpc-ibm-aix5.3.0.0/lib -ltk8.3 -ltcl8.3 -lX11 -o build/lib.aix-5.3-2.4/_tkinter.so
ld: 0706-006 Cannot find or open library file: -l tk8.3
        ld:open(): No such file or directory
ld: 0706-006 Cannot find or open library file: -l tcl8.3
        ld:open(): No such file or directory
collect2: ld returned 255 exit status
*** WARNING: renaming "_tkinter" since importing it failed: Could not load module build/lib.aix-5.3-2.4.
System error: No such file or directory
error: No such file or directory
gmake: *** [sharedmods] Error 1
gmake: *** [/home/jolexa/aix/trunk/buildroot/python/python.pacer.powerpc-ibm-aix5.3.0.0.builded] Error 1

Since I have a python binary (v 2.5.1) already available to me, is there any way to trick prefix-launcher into thinking it built python? Thanks for the help.
Comment 1 Michael Haubenwallner (RETIRED) gentoo-dev 2007-11-21 21:07:28 UTC
(Tought I already had answered this on the list, seems to be not - sorry).

(In reply to comment #0)
> Since I have a python binary (v 2.5.1) already available to me, is there any
> way to trick prefix-launcher into thinking it built python? Thanks for the
> help.

Yes, that is possible:

$ gmake config python_SUPPLY=EXTERNAL
This informx prefix-launcher to not build python, but to assume it in PATH.

$ gmake install
Continues the install.
Comment 2 Fabian Groffen gentoo-dev 2007-11-21 21:15:00 UTC
just for my understanding:

did hawking fix this issue for the gentoo ebuild or not?
Comment 3 Michael Haubenwallner (RETIRED) gentoo-dev 2007-11-21 21:18:16 UTC
(In reply to comment #2)
> just for my understanding:
> 
> did hawking fix this issue for the gentoo ebuild or not?

Yes, looks good, although I did not retest it yet.
Comment 4 Michael Haubenwallner (RETIRED) gentoo-dev 2007-11-29 16:24:55 UTC
Completely disabled building tkinter module in prefix-launcher/trunk
(on sourceforge.net) revision 106 - please try again.
Comment 5 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2007-12-07 15:49:36 UTC
I'm still hitting major issues with python on AIX 5.3. 

I have yet to try bootstrapping it again. Now when I run eprefix-bootstrap, python dies with the following snippet:

<snip, ld WARNINGs extend past my xterm buffer>
ld: 0711-224 WARNING: Duplicate symbol: PyErr_SetInterrupt
ld: 0711-224 WARNING: Duplicate symbol: PyOS_AfterFork
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
make[1]: Leaving directory `/home/jolexa/portage/aix-5.3/var/tmp/portage/dev-lang/python-2.5.1-r4/work/Python-2.5.1'
powerpc-ibm-aix5.3.0.0-ranlib libpython2.5.a
./Modules/makexp_aix Modules/python.exp . libpython2.5.a;  powerpc-ibm-aix5.3.0.0-gcc -pthread -L/home/jolexa/portage/aix-5.3/usr/lib -R/home/jolexa/portage/aix-5.3/usr/lib -L/home/jolexa/portage/aix-5.3/lib -R/home/jolexa/portage/aix-5.3/lib -L. -Wl,-bE:Modules/python.exp -lld -o python \
                        Modules/python.o \
                        -Wl,-blibpath:/home/jolexa/portage/aix-5.3/usr/lib libpython2.5.a -ldl    -lm  
powerpc-ibm-aix5.3.0.0-gcc: unrecognized option '-R/home/jolexa/portage/aix-5.3/usr/lib'
powerpc-ibm-aix5.3.0.0-gcc: unrecognized option '-R/home/jolexa/portage/aix-5.3/lib'
ld: 0711-319 WARNING: Exported symbol not defined: _GLOBAL__FD_libpython2_5_so
ld: 0711-319 WARNING: Exported symbol not defined: _GLOBAL__FI_libpython2_5_so
case $MAKEFLAGS in \
        *-s*) LIBPATH=/home/jolexa/portage/aix-5.3/var/tmp/portage/dev-lang/python-2.5.1-r4/work/Python-2.5.1: CC='powerpc-ibm-aix5.3.0.0-gcc -pthread' LDSHARED='./Modules/ld_so_aix powerpc-ibm-aix5.3.0.0-gcc -pthread -bI:Modules/python.exp' OPT='-DNDEBUG -g -O3 -Wall -Wstrict-prototypes' ./python -E ./setup.py -q build;; \
        *) LIBPATH=/home/jolexa/portage/aix-5.3/var/tmp/portage/dev-lang/python-2.5.1-r4/work/Python-2.5.1: CC='powerpc-ibm-aix5.3.0.0-gcc -pthread' LDSHARED='./Modules/ld_so_aix powerpc-ibm-aix5.3.0.0-gcc -pthread -bI:Modules/python.exp' OPT='-DNDEBUG -g -O3 -Wall -Wstrict-prototypes' ./python -E ./setup.py build;; \
        esac
Could not load program ./python:
        Dependent module libc.a(shr.o) could not be loaded.
Could not load module libc.a(shr.o).
System error: No such file or directory
make: *** [sharedmods] Error 255
 * 
 * ERROR: dev-lang/python-2.5.1-r4 failed.
 * Call stack:
 *                ebuild.sh, line 1604:  Called dyn_compile
 *                ebuild.sh, line  942:  Called qa_call 'src_compile'
 *                ebuild.sh, line   44:  Called src_compile
 *   python-2.5.1-r4.ebuild, line  207:  Called die
 * The specific snippet of code:
 *    emake || die "Parallel make failed"
 *  The die message:
 *   Parallel make failed
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/home/jolexa/portage/aix-5.3/var/tmp/portage/dev-lang/python-2.5.1-r4/temp/build.log'.
 * 

Is anything blatantly obvious? I have successfully compiled python 2.5 by hand here, I know it _CAN_ be done, I just don't know how to jump this hurdle here.
Comment 6 Michael Haubenwallner (RETIRED) gentoo-dev 2007-12-07 16:13:49 UTC
(In reply to comment #5)
> powerpc-ibm-aix5.3.0.0-ranlib libpython2.5.a

Unfortunately python-2.5 is still broken on aix - although I have a working one here, the merge does not work smoothly yet.

>                         -Wl,-blibpath:/home/jolexa/portage/aix-5.3/usr/lib

Depending on the ld-wrapper in use (binutils-config), this may be one part of the problem.

>         Dependent module libc.a(shr.o) could not be loaded.

This indicates "/usr/lib:/lib" is missing in libpath - AIX ld needs this explicitly passed with "-blibpath" if any.

> Is anything blatantly obvious? I have successfully compiled python 2.5 by hand
> here, I know it _CAN_ be done, I just don't know how to jump this hurdle here.

Were you able to build python with '--enable-shared' ?
Comment 7 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2007-12-07 17:27:15 UTC
(In reply to comment #6)

> Unfortunately python-2.5 is still broken on aix - although I have a working one here, the merge does not work smoothly yet.

Oh? I was not aware. Isn't that pretty important for portage ;-) - Do you know what Marshall from the ML did? Could we get Python 2.4 only keyworded for aix back in the tree?

> 
> >                         -Wl,-blibpath:/home/jolexa/portage/aix-5.3/usr/lib
> 
> Depending on the ld-wrapper in use (binutils-config), this may be one part of
> the problem.
> 
> >         Dependent module libc.a(shr.o) could not be loaded.
> 
> This indicates "/usr/lib:/lib" is missing in libpath - AIX ld needs this
> explicitly passed with "-blibpath" if any.

Is that a env var or something that gets passed via configure? And how can I pass that properly?

> Were you able to build python with '--enable-shared' ?

I will get back to you.


Thanks for your help so far, this is my last hurdle I think. ;)
Comment 8 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2007-12-07 20:15:17 UTC
> > Were you able to build python with '--enable-shared' ?
> 
> I will get back to you.

Is it possible that previous patches screw up python 2.5 on AIX??

I got python 2.5.1 to compile and run on AIX 5.3 manually by:


0) Apply python-2.4.4-ld_so_aix-which.patch & python-2.5.1-aix-ldshared.patch
0b) export PYTHON_DISABLE_MODULES=readline pyexpat dbm gdbm bsddb _curses _curses_panel _tkinter _sqlite3 && export PYTHON_DISABLE_SSL=1
1) ./configure --prefix=<path> --enable-shared --disable-ipv6 --with-gcc
2) in setup.py:
-ext_modules=[Extension('_struct', ['_struct.c'])],
+#ext_modules=[Extension('_struct', ['_struct.c'])],

I have no clue what effect that has on the final product. It didn't want to compile _struct for the same reason that it didn't want to compile _tkinter that I brought up awhile ago. So, I disabled it.

3) make
4) make install
4b) search the web to see why I hit this: 
Compiling /home/jolexa/aix/bin2/lib/python2.5/zipfile.py ...
make: *** [libinstall] Error 1
5) give up searching and do "make -i install"
6) appears to work.


Please give me some input on this. Can you also let me know if it works for you?
Comment 9 Michael Haubenwallner (RETIRED) gentoo-dev 2007-12-10 09:30:55 UTC
Fixed with r13646.