[FreeBSD-users-jp 96299] Re: FreeFem++ のインストール問題

Kouichi Hirabayashi kh @ mogami.com
2018年 8月 21日 (火) 11:47:34 UTC


FreeFem++ の ffglut が Segmentation fault で動かない原因
を少し調べた結果ですが、

 1) system の /usr/local/lib/libGLU.so が clang, clang++
     で compile され、/usr/libc++.so を使う
 2) ffglut は g++ で complile され、
    /usr/local/lib/compat/libstdc++.so.6 を使う

という不整合が原因みたいです。

応急処置としては、

  libGLU を gcc, g++ で compile して libGLU.a を作り、
  src/nw の Makefile で ffglut を compile するところで、
  -lGLU を(上記で作った)libGLU.a への static link に変える

で、正常に動作する ffglut ができますので、これを /usr/local/bin
に copy で時間を稼いで、

問題は、どう port するかですが、

 1) gcc で compile した libGLU を作り、それと link する
 2) すべてを clang, clang++, flang で compile する

のいずれかの仕組みを考えるということかなあと思いますが、綺麗な方法
を思い付けますか?

CC=clag CXX=clang++ F77=flang などで configure を実行して
も gcc, g++, gfortarn を使ってしまうので、もっと調べないとダメ
みたいです。

なお、今の FreeFem++ は --enable-download を前提にしているよ
うで、これがないと実行時の load module が大幅に減って、sample
program のかなりが実行できなくなりますので、この対策も必要です。

平林 浩一


freebsd-users-jp メーリングリストの案内