[FreeBSD-users-jp 96506] FreeBSD-12.1 の libGLU.so の問題

Kouichi Hirabayashi kh @ mogami.com
2019年 12月 5日 (木) 10:25:45 UTC


FreeBSD-12.1 で g++ 用に書かれた freeglut を使うプログラム
(FreeFem++)をコンパイルして気づいたのですが、作成した実行プロ
グラムが crush するんです。

例えば、下記の最低限のプログラム

-- a.cpp --
#include <GL/glut.h>
#include <iostream>

int main(int argc, char *argv[])
{
}
--

を

  g++ -o a a.cpp -I/usr/local/include -L/usr/local/lib -lglut -lGLU -lm

でコンパイルすると再現できます。

  c++ -o a a.cpp -I/usr/local/include -L/usr/local/lib -lglut -lGLU -lm

でコンパイルすれば正常に動作しますし、g++ でも

  #include <iostream>

を削除すれば正常に動作します。

また、ports/graphics/libGLU の Makefile に

   USE_GCC=	9+

を追加して gcc で作った libGLU.so なら、g++ でも c++ でも正常に
動作する実行ファイルができます。9+ は any でも大丈夫だと思います。

どなたか、原因の解明と対策を思い付けないでしょうか?


なお、FreeBSD-11.2 でも同じ問題があって、FreeBSD-10.3 には問題
がないようです。

平林 浩一


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