On 4/14/14 15:13 , Nick Zivkovic wrote:
> Hi.
> 
> I've been trying to get MPICH to compile my very simple hello-world
> program which uses MPI.
> 
> Steps I took:
> 
> mpicc -c hw.c
> mpicc -o hw hw.o
> 
> Which resulted in the following error:
> 
> ] mpicc -o hw hw.o
> ld: fatal: file /usr/lib/amd64/libgcc_s.so.1: version 'GCC_4.5.0' does
> not exist:
>         required by file
> /opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.3/../../../../x86_64-sun-solaris2.11/lib/amd64/libgfortran.so.3
> ld: fatal: file /usr/lib/amd64/libgcc_s.so.1: version 'GCC_4.5.0' does
> not exist:
>         required by file
> /opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.3/../../../../x86_64-sun-solaris2.11/lib/amd64/libquadmath.so.0
> ld: fatal: file processing errors. No output written to hw
> collect2: error: ld returned 1 exit status
> ]
> 
> I have no idea what it's trying to communicate, so I thought I'd see
> if anyone here has run into similar issues with MPI and SmartOS.
> 
> Any suggestions?
> 
> BTW, here is the output of `mpichversion`.
> ] mpichversion
> MPICH Version:          3.0.4
> MPICH Release date:     Wed Apr 24 10:08:10 CDT 2013
> MPICH Device:           ch3:nemesis
> MPICH configure:        --datadir=/opt/local/share/mpich
> --sysconfdir=/opt/local/etc/mpich --docdir=/opt/local/share/doc/mpich
> --htmldir=/opt/local/share/doc/mpich/html
> --with-openpa-prefix=/opt/local --with-hwloc-prefix=/opt/local
> --with-pm=hydra:gforker --disable-fc --with-thread-package=posix
> --with-libiconv-prefix=/opt/local --prefix=/opt/local
> --build=x86_64-sun-solaris2.11 --host=x86_64-sun-solaris2.11
> --mandir=/opt/local/man
> MPICH CC:       gcc -O2 -pipe -O2 -I/usr/include -I/opt/local/include   -O2
> MPICH CXX:      g++ -O2 -pipe -O2 -I/usr/include -I/opt/local/include  -O2
> MPICH F77:      f77 -O  -O2
> MPICH FC:       no

Hi Nick,

So, the problem here is that both the platform and pkgsrc provide the
library libgcc_s. When pkgsrc compilers build, they put /opt/local/lib
or /opt/local/lib/amd64 first on both the library and run path, which
you probably are not doing here. This might normally be done by
specifying -L /opt/local/lib/amd64 -R /opt/local/lib/amd64 when it's
linking.

Robert


-------------------------------------------
smartos-discuss
Archives: https://www.listbox.com/member/archive/184463/=now
RSS Feed: https://www.listbox.com/member/archive/rss/184463/25769125-55cfbc00
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=25769125&id_secret=25769125-7688e9fb
Powered by Listbox: http://www.listbox.com

Reply via email to