Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: Brian W. Barrett (bbarrett_at_[hidden])
Date: 2007-04-06 13:08:51


Hi -

This is pretty odd. I haven't gotten a chance to make the "official"
1.2 OS X package yet, so I havent run into this problem. I'll try to
replicate in the next day or two. In the mean time, just to make
sure, you are using the latest version of XCode, right?

Brian

On Apr 6, 2007, at 7:22 AM, Werner Van Geit wrote:

> Hello,
>
> In our lab we are installing OpenMPI onto our Apple cluster
> computer. The
> cluster contains a couple of PowerPC G5 nodes and the new Intel Xeon
> Xserves, all with a clean install of Mac OS X Server 10.4.8 , Xcode
> 2.4.1
> and Sun Grid Engine 6 (so we're not using XGrid). Since we want to
> make it 1
> big cluster, we need Universal Binaries of OpenMPI.
>
> We have been using the script buildpackage.sh available from the
> contrib/dist/macosx-pkg from the openmpi-1.2.tar.gz file. If we run
> this
> script on an Intel machine, we get fat binaries (checked this with the
> command line "file" command) that run on the Intel machine (we used
> "ompi_info" as the test), but not on the G5 machines. While running
> ompi_info) we get an error:
>
> dyld: Symbol not found: _lt_libltdlc_LTX_preloaded_symbols
> Referenced from: /tmp/werner/mpi/lib/libopen-pal.0.dylib
> Expected in: flat namespace
>
> Trace/BPT trap
>
> (There are no error @ compile time)
>
> Also the inverse occurs. If we compile on a G5, again fat binaries of
> everything are created, but now it doesn't run on the Intel
> anymore, with
> exactly the same error. And it also doesn't run on a G5 unless we
> make a
> thinner binary (from the fat ones), only containing the ppc and
> intel code
> (not the ppc64).
>
> First, we thought that the problem could be caused by the processor
> switching modes from 32 to 64 bit or something, so we compiled
> everything
> with a modified buildpackage.sh script adding "-m32" to the CFLAGS,
> CXXFLAGS
> and OBJCFLAGS, but this had no effect, still the same errors @
> runtime.
>
> Then we compiled with "-enable-static" and "-disable-shared" but
> then the
> error occurred @ compile time. We got an error like " Symbol not
> found:
> _lt_libltdlc_LTX_preloaded_symbols".
>
>
> Since we figured out that this libltdlc is used for the "dlopen", I
> disabled
> it by putting "--disable-dlopen" in the buildpackage.sh script. Now
> everything compiles on both Intel and PPC and also runs on both
> architectures.
> But now I can imagine that in the future we might be having
> problems with
> installing plugins because we disabled the dlopen.
>
> Do you maybe know if there is another way to compile OpenMPI on our
> configuration, while still enabling dlopen ? (Is the problem maybe
> caused by
> the fact that there doesn't seem to exist a 64-bit version of
> libltdl.3.dylib and libltdl.a on the OS ? The output of the file
> command is
>
> "
> libltdl.3.dylib: Mach-O fat file with 2 architectures
> libltdl.3.dylib (for architecture i386): Mach-O dynamically linked
> shared
> library i386
> libltdl.3.dylib (for architecture ppc): Mach-O dynamically linked
> shared
> library ppc
> "
> (so no ppc64)
>
>
>
> Thank you,
>
> Werner Van Geit
>
> --
> ,,,
> (o o)
> ====================oOO==(_)==OOo==================
> PhD Student Laboratory for Theoretical Neurobiology
> Department of Biomedical Sciences
> University of Antwerp (Campus Drie Eiken)
> Universiteitsplein 1
> B-2610 Wilrijk (Belgium)
>
> Office T5.37
>
> Tel. ++ 32 3 8202610
> werner_at_[hidden]
>
> <buildoutput.txt>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users