Python and PVM

Mitchell R Whorlow mrw at nwu.edu
Tue May 16 07:38:14 CEST 2000


I am attempting to add a few more PVM function calls to the Python
module for PVM available at www.flyn.org.  I am currently interested
in adding support for four calls, mainly pvm_joingroup(),
pvm_lvgroup(), pvm_barrier(), and pvm_gettid().  I have added these
function definitions to the downloadable C code, but after recompiling
the module, I get undefined symbol errors when I try to import pypvm.
I am hoping that someone can spare some time to help me out.

My setup is:
-FreeBSD 4.0
-gcc 2.95.2
-Python 1.5.2
-PVM 3.4

I used the same commands to compile the new module as I used to
compile the original module.

> ./configure
> gcc -fPIC -O -I/usr/local/include -I/usr/lib/python1.5/config \
-DHAVE_CONFIG_H -c ./pypvm_coremodule.c
> gcc -shared pypvm_coremodule.o -L/usr/local/pvm3/lib/FREEBSD -lpvm3\
-o pypvm_coremodule.so
> make install

That all works great for compiling and installing the original module,
but after my additions, I now get the following error when starting up
python:

> python
Python 1.5.2 (#2, Mar 16 2000, 23:37:01) [GCC 2.95.2 19991024
(release)] on freebsd4
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
>>> import pypvm
Traceback (innermost last):
  File "<stdin>", line 1, in ?
  File "/usr/local/lib/python1.5/site-packages/pypvm.py", line 25, in ?
    from pypvm_core import *
ImportError:
/usr/local/lib/python1.5/site-packages/pypvm_coremodule.so: Undefined
symbol "pvm_gettid" 
>>>

My function definition for pvm_gettid is quite simple, so I don't
think that is the problem:

There must be a linking error somewhere, but I can't figure it out,
because as far as I can tell, I link against the necessary libraries.

Thanks for any help,

Mitch



More information about the Python-list mailing list