Dec 28, 2007

Mesa-7.0.2 : リンクエラー


MesaLib-7.0.2 を VC++2005 でビルドしようとしたら、こんなリンクエラーが出た:
2>   ライブラリ .\Release/OPENGL32.lib とオブジェクト .\Release/OPENGL32.exp を作成中
2>mesa.lib(glapi.obj) : error LNK2001: 外部シンボル "_gl_dispatch_stub_772" は未解決です。
2>Release/OPENGL32.DLL : fatal error LNK1120: 外部参照 1 が未解決です。
修正方法の指針はここにあった:
  • Nabble - mesa3d-users - Compile problem
具体的には以下の通り。
Mesa-7.0.2/src/mesa/drivers/windows/gdi/wmesa.c
に、1536行目として
void gl_dispatch_stub_772(void){}
と書き加えてビルドすればOK。
diff -c c:/Mesa-7.0.2/src/mesa/drivers/windows/gdi/wmesa.c\~ c:/Mesa-7.0.2/src/mesa/drivers/windows/gdi/wmesa.c
*** c:/Mesa-7.0.2/src/mesa/drivers/windows/gdi/wmesa.c~ Fri Nov  2 00:30:52 2007
--- c:/Mesa-7.0.2/src/mesa/drivers/windows/gdi/wmesa.c Fri Dec 28 19:06:29 2007
***************
*** 1533,1537 ****
--- 1533,1538 ----
  void gl_dispatch_stub_769(void){}
  void gl_dispatch_stub_770(void){}
  void gl_dispatch_stub_771(void){}
+ void gl_dispatch_stub_772(void){}

  #endif

Diff finished.  Fri Dec 28 19:13:18 2007