--- irteus/irtgl.l (revision 861)
+++ irteus/irtgl.l (working copy)
@@ -28,7 +28,12 @@
(let (gl-lib)
#+:darwin
- (setq gl-lib ( load-foreign "/opt/local/lib/libGL.dylib"))
+ (progn
+ (cond
+ ((probe-file "/opt/local/lib/libGL.dylib")
+ (setq gl-lib ( load-foreign "/opt/local/lib/libGL.dylib")))
+ (t
+ (setq gl-lib ( load-foreign "/opt/X11/lib/libGL.dylib")))))
--- irteus/irtx.l (revision 861)
+++ irteus/irtx.l (working copy)
@@ -53,7 +53,9 @@
(let (x-lib pname)
#+:darwin
- (setq pname "/opt/local/lib/libX11.dylib")
+ (if (probe-file "/opt/local/lib/libX11.dylib")
+ (setq pname "/opt/local/lib/libX11.dylib")
+ (setq pname "/opt/X11/lib/libX11.dylib"))
r852で対応しました.
Makefileも-L/opt/X11/lib みたいなのをつけている気がしますが,あればそれもおくってください.
また,macがportなのか,homebewなのか区別する方法をしっていたら教えてください.
調べたところMacOSXに標準で入っているX11の標準インストールディレクトリが/usr/X11/, 最新版のX11を含むXQuartzのデフォルトインストールディレクトリが/opt/X11/のようです。
MacOSX 10.5 Leopardから10.7 LionまではOSインストールと同時にインストールされますが、10.8 Mountain Lionから任意インストール(標準では含まれない)になったようです。
10.8をクリーンインストールした環境でXQuartzの最新版(2.7.4)をインストールしたところ、(おそらく互換性維持のため)/opt/X11/から/usr/X11/へシンボリックリンクを自動で張るようになっていたので、コードとしては/usr/X11/を指定するのが無難だと思われます。
以上を踏まえて、Rev.862に対して以下の修正をすることで、
MacOSX 10.8.2(Build 12C60),
XQuartz 2.7.4
の環境でコンパイルに成功しました。
Index: eus/lisp/Makefile.generic1
--- eus/lisp/Makefile.generic1 (revision 580)
+++ eus/lisp/Makefile.generic1 (working copy)
@@ -27,7 +27,8 @@
-GLINCLUDE=-I/usr/local/Mesa/include/
+GLINCLUDE=-I/usr/X11/include/
Index: eus/lisp/Makefile.Darwin
--- eus/lisp/Makefile.Darwin (revision 580)
+++ eus/lisp/Makefile.Darwin (working copy)
@@ -78,7 +78,8 @@
-XLIB= -L/opt/local/lib -lX11
+XLIB= -L/usr/X11/lib -lX11
# specify directories where euslisp's libraries are located.
EUSLIB= -L$(ADLIBDIR)
Index: eus/lisp/xwindow/xforeign.c.c
===================================================================
--- eus/lisp/xwindow/xforeign.c.c (revision 580)
+++ eus/lisp/xwindow/xforeign.c.c (working copy)
@@ -427,6 +427,8 @@
#elif Darwin
eusinteger_t dlhandle;
dlhandle=(eusinteger_t)dlopen("/opt/local/lib/libX11.dylib", RTLD_LAZY);
+ if(dlhandle == 0)
+ dlhandle=(eusinteger_t)dlopen("/usr/X11/lib/libX11.dylib",RTLD_LAZY);
entry=(eusinteger_t)dlsym(dlhandle, xentry);
#else
entry=(eusinteger_t)dlsym((void *)((eusinteger_t)(sysmod->c.ldmod.handle) & ~3), xentry);
Index: irteus/irtx.l
===================================================================
--- irteus/irtx.l (revision 862)
+++ irteus/irtx.l (working copy)
@@ -56,7 +56,7 @@
#+:darwin
(if (probe-file "/opt/local/lib/libX11.dylib")
(setq pname "/opt/local/lib/libX11.dylib")
- (setq pname "/opt/X11/lib/libX11.dylib"))
+ (setq pname "/usr/X11/lib/libX11.dylib"))
#+:cygwin
(if (probe-file "/usr/bin/cygX11-6.dll")
(setq pname "/usr/bin/cygX11-6.dll")
Index: irteus/irtgl.l
===================================================================
--- irteus/irtgl.l (revision 862)
+++ irteus/irtgl.l (working copy)
@@ -33,7 +33,7 @@
((probe-file "/opt/local/lib/libGL.dylib")
(setq gl-lib ( load-foreign "/opt/local/lib/libGL.dylib")))
(t
- (setq gl-lib ( load-foreign "/opt/X11/lib/libGL.dylib")))))
+ (setq gl-lib ( load-foreign "/usr/X11/lib/libGL.dylib")))))
#+:cygwin
(progn
(cond
なお以上の通りX11のインストールディレクトリの差異が原因のため、macports/homebrewはこれらの問題に無関係のようです。一応判別は"which port" or "which brew"で返り値の有無を調べることで可能だと思われます。
Greetings! Quick question that's completely off topic. Do you know how to make your site mobile friendly? My blog looks weird when browsing from my iphone 4. I'm trying to find a theme or plugin that might be able to resolve this issue. If you have any recommendations, please share. Thank you!
north face jackets on sale http://northfaceoutletstore.railblogs.com/
Ticket moved from /p/jskeus/patches/4/
Can't be converted: