[SCore-users-jp] mpi++における共有ライブラリのリンクについて
kameyama @ pccluster.org
kameyama @ pccluster.org
2003年 2月 24日 (月) 09:33:49 JST
亀山です.
In article <005101c2d9b3$abeeea10$6e0010ac @ tommy> "Okamoto Masafumi" <okamoto @ gsport.co.jp> wrotes:
> お世話になっております、ジースポートの岡本です。
>
> SCore5.0.1をredhat7.2上で使用しております。
>
> 開発しているプログラムでXMLを使用しているため、
> Xerces(http://xml.apache.org/xerces-c/)を利用しています。
>
> Xercesを共有ライブラリとして使っているのですが
> ここでMakefileのg++をmpic++に置き換えてビルドすると 以下のエラーが起きてしま
> います。
> /usr/bin/ld; cannot find -lxerces-c
> collect2: ld returned 1 exit status
>
> g++でmakeした場合には問題なくビルドできます。
SCore では checkpoint が static link された binary を前提としているため,
default で static link するようにしています.
共有 library を使用する場合は -nostatic オプションをつけてください.
> /opt/score/bin/mpic++ -L. -o hoge1.o hoge2.o
> hoge3.o -L../xerces-c-src2_1_0/lib -lxerces-c
/opt/score/bin/mpic++ -nostatic -L. -o hoge1.o hoge2.o hoge3.o -L../xerces-c-src2_1_0/lib -lxerces-c
のようになると思います.
from Kameyama Toyohisa
SCore-users-jp メーリングリストの案内