home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 15 / AACD15.ISO / AACD / Programming / Python2 / Python20_source / Misc / HPUX-NOTES < prev    next >
Encoding:
Text File  |  2000-10-25  |  1.0 KB  |  25 lines

  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
  4.  
  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:
  13.  
  14. cc config.o -Wl,-E libModules.a  ../Python/libPython.a  ../Objects/libObjects.a ../Parser/libParser.a   -lm  -ldld -o python
  15.  
  16. [Guido's note: as of Python 1.5, replace the four libraries with
  17. ../libpython$(VERSION).a]
  18.  
  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:
  21.  
  22. ld -b -o <modName>module.sl <object list>
  23.  
  24. The -b tells the linker to produce a shared library.
  25.