Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

I am having the same problem as tux300181 (it seems to be reported a bit recently) However none of the published fixes appear to be working.

The symptom is:
[vlad@bd01 Parallel-MPI-Simple-0.03]$ make test PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl Can't load 'blib/arch/auto/Parallel/MPI/Simple/Simple.so' for module P +arallel::MPI::Simple: blib/arch/auto/Parallel/MPI/Simple/Simple.so: u +ndefined symbol: ompi_mpi_char at /usr/lib64/perl5/5.10.0/x86_64-linu +x-thread-multi/DynaLoader.pm line 203. at ic.pl line 3
This appears to be a loader problem, although I am not sure, any assistance is greatly appreciated.
What I did:
perl Makefile.PL CC=mpicc CCFLAGS="-lopenmpi -m64 -L/usr/local/lib/ope +nmpi -L/usr/local/lib/" LIB=/usr/local/lib [vlad@bd01 Parallel-MPI-Simple-0.03]$ make mpicc -c -lopenmpi -m64 -L/usr/local/lib/openmpi -L/usr/local/lib/ - +O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protec +tor --param=ssp-buffer-size=4 -m64 -mtune=generic -DVERSION=\"0.03\ +" -DXS_VERSION=\"0.03\" -fPIC "-I/usr/lib64/perl5/5.10.0/x86_64-linux +-thread-multi/CORE" Simple.c Simple.xs: In function ‘_Gather’: Simple.xs:131: warning: null argument where non-null required (argumen +t 3) Simple.xs:124: warning: unused variable ‘rank’ Simple.xs: In function ‘_Comm_split’: Simple.xs:204: warning: unused variable ‘realcolour’ Simple.c: In function ‘Finalize’: Simple.xs:111: warning: control reaches end of non-void function Simple.c: In function ‘Barrier’: Simple.xs:106: warning: control reaches end of non-void function Simple.c: In function ‘Init’: Simple.xs:82: warning: control reaches end of non-void function Simple.c: In function ‘_Gather’: Simple.xs:160: warning: ‘buf_lens’ may be used uninitialized in this f +unction Running Mkbootstrap for Parallel::MPI::Simple () chmod 644 Simple.bs rm -f blib/arch/auto/Parallel/MPI/Simple/Simple.so gcc -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions - +fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic Simple +.o -o blib/arch/auto/Parallel/MPI/Simple/Simple.so \ \ chmod 755 blib/arch/auto/Parallel/MPI/Simple/Simple.so cp Simple.bs blib/arch/auto/Parallel/MPI/Simple/Simple.bs chmod 644 blib/arch/auto/Parallel/MPI/Simple/Simple.bs Manifying blib/man3/Parallel::MPI::Simple.3pm
These warnings appear harmless enough... However make test fails as described above.
Background:
- using openmpi 1.4.1 which seems to run the examples ok. - ldconfig output is: vlad@bd01 Parallel-MPI-Simple-0.03]$ ldconfig -p | grep mpi libopenmpi_malloc.so.0 (libc6,x86-64) => /usr/local/lib/libopenmpi +_malloc.so.0 libopenmpi_malloc.so (libc6,x86-64) => /usr/local/lib/libopenmpi_m +alloc.so libmpi_f90.so.0 (libc6,x86-64) => /usr/local/lib/libmpi_f90.so.0 libmpi_f90.so (libc6,x86-64) => /usr/local/lib/libmpi_f90.so libmpi_f77.so.0 (libc6,x86-64) => /usr/local/lib/libmpi_f77.so.0 libmpi_f77.so (libc6,x86-64) => /usr/local/lib/libmpi_f77.so libmpi_cxx.so.0 (libc6,x86-64) => /usr/local/lib/libmpi_cxx.so.0 libmpi_cxx.so (libc6,x86-64) => /usr/local/lib/libmpi_cxx.so libmpi.so.0 (libc6,x86-64) => /usr/local/lib/libmpi.so.0 libmpi.so (libc6,x86-64) => /usr/local/lib/libmpi.so libexempi.so.3 (libc6,x86-64) => /usr/lib64/libexempi.so.3 - libmpi.so defines the symbol openmpi_mpi_char: [[vlad@bd01 Parallel-MPI-Simple-0.03]$ objdump -tT /usr/local/lib/libm +pi.so.0 | grep mpi_char 0000000000296920 g O .data 0000000000000200 ompi_m +pi_char 0000000000296b20 g O .data 0000000000000200 ompi_m +pi_character 0000000000296b20 g DO .data 0000000000000200 Base ompi_m +pi_character 0000000000296920 g DO .data 0000000000000200 Base ompi_m +pi_char - However the file Simple.so does not appear to look for this lib: [vlad@bd01 Parallel-MPI-Simple-0.03]$ ldd blib/arch/auto/Parallel +/MPI/Simple/Simple.so linux-vdso.so.1 => (0x00007fffaa1fe000) libc.so.6 => /lib64/libc.so.6 (0x00007fcaa1ae4000) /lib64/ld-linux-x86-64.so.2 (0x0000003da7a00000) System is FC10 x86_64
What am I missing?

In reply to Re^4: OpenMPI and Perl by Vlad, the IM-perler
in thread OpenMPI and Perl by spadacciniweb

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (2)
As of 2024-04-19 18:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found