Files for 2.1b1 distribution.
[python/dscho.git] / Misc / HPUX-NOTES
blob6f9c67f9a76ffb32777914895075976494f2e7fd
1 Subject: Dynamic Linking under HP-UX
2 From: "C. Derek Fields" <derek@gamekeeper.bellcore.com>
3 Date: Thu, 08 Sep 94 14:14:07 -0400
5 There are two important points.  First, the python executable must be
6 linked with the -E option to explicitly export all symbols.  This
7 works with the vanilla interpreter, but I am not sure how friendly it
8 will be when I try to embed the interpreter in a larger application.
9 It may be necessary to hand tune the exports using the -e option.
10 Anyway, the additional flag to $(CC) is "-Wl,-E", which passes the -E
11 flag to the compiler.  My link line (from an actual run) looks like
12 this:
14 cc config.o -Wl,-E libModules.a  ../Python/libPython.a  ../Objects/libObjects.a ../Parser/libParser.a   -lm  -ldld -o python
16 [Guido's note: as of Python 1.5, replace the four libraries with
17 ../libpython$(VERSION).a]
19 Second, the dynamic module must be compiled with the +z option to make
20 it position independent and then linked into a shared library:
22 ld -b -o <modName>module.sl <object list>
24 The -b tells the linker to produce a shared library.