C プログラムから dlopen() を使用して C++ 共有ライブラリを開く場合は、共有ライブラリが適切な C++ 実行時ライブラリ (-compat=5 の場合は libCrun.so.1) に依存していることを確認してください。
そのためには、共有ライブラリの構築時に、-compat=5 の場合は -lCrun をコマンド行に追加します。例:
example% CC -G -compat=5... -lCrun
-compat=g、-std=c++03 または -std=c++11 オプションを使用する場合は、代わりに g++ サポートライブラリをリンクする必要があります。
example% CC -G -std=c++11 ... -lstdc++ -lgcc_s -lCrunG3
共有ライブラリが例外を使用している場合には、ライブラリが C++ 共有ライブラリに依存していないと、C プログラムが正しく動作しないことがあります。