On Jul 15, 2007, at 6:29 AM, Sharon Phillips wrote:
> A few weeks ago I tried to install fxruby, went grey, ended up
> installing fink and darwinports, lost more hair and ended up
> completely trashing Ruby on my (wife''s) system here.
> Thanks to some good advice on this list (yes, I brought ''Learning
> unix on OSX Tiger - good book btw), I was able to get ruby up again.
Congratulations!
> Which brings us to today, when I decided to try fxruby again.
> Agghhh... still no joy, but this time, before I mess thing up I
> though I''d ask for some advice.
>
> All I''ve tried this far is installing via gem. Here''s the
result:
<snip>
> make
> gcc -I. -I. -I/usr/local/lib/ruby/1.8/universal-darwin8.0 -I. -
> DHAVE_SYS_TIME_H -DHAVE_SIGNAL_H -I/usr/local/include/fxscintilla -
> I/usr/local/include/fox-1.6 -I/opt/local/include/fox-1.6 -I/opt/
> local/include/fxscintilla -fno-common -g -O2 -fno-common -pipe -
> fno-common -O0 -Iinclude -DWITH_FXSCINTILLA -DHAVE_FOX_1_6 -arch
> i386 -c librb.c
>
> <snip a few hundred lines>
>
> cc -dynamic -bundle -undefined suppress -flat_namespace -arch i386 -
> L"/usr/local/lib" -L"/usr/local/lib"
-L"/usr/X11R6/lib" -o
> fox16.bundle librb.o core_wrap.o dc_wrap.o dialogs_wrap.o
> frames_wrap.o fx3d_wrap.o FXRbApp.o FXRbDataTarget.o FXRbGLViewer.o
> FXRuby.o iconlist_wrap.o icons_wrap.o image_wrap.o impl.o
> label_wrap.o layout_wrap.o list_wrap.o markfuncs.o mdi_wrap.o
> menu_wrap.o scintilla_wrap.o table_wrap.o text_wrap.o
> treelist_wrap.o ui_wrap.o unregisterOwnedObjects.o -lruby -
> lfxscintilla -lFOX-1.6 -lGLU -lGL -lX11 -lXext -ljpeg -lz -lpng -
> lstdc++ -lpthread -ldl -lobjc
> /usr/bin/ld: can''t locate file for: -lfxscintilla
> collect2: ld returned 1 exit status
> make: *** [fox16.bundle] Error 1
Before I launch into the explanation of this problem, and a way to
fix it, let me put in a plug for MacPorts. I know that you
(apparently) had a bad experience with Fink. So did I. MacPorts, in
my opinion, is better. I am also, personally, the maintainer of the
FOX, FXScintilla and FXRuby ports in MacPorts and am pretty confident
in saying that that''s the easiest, lowest-hassle way to install
FXRuby at this point.
OK.
The build is failing because it can''t find the library for
FXScintilla, which is an optional component that FXRuby can use when
it''s present:
http://www.fxruby.org/doc/scintilla.html
So, for some reason, the FXRuby installation script thought that
FXScintilla was installed on your computer and it configured the
build that way. The way that FXRuby "decides" whether or not you have
FXScintilla is installed is by looking for the FXScintilla include
files; it looks for any of the following:
/usr/include/fxscintilla/fxscintilla.h
/usr/local/include/fxscintilla/fxscintilla.h
/sw/include/fxscintilla/fxscintilla.h (this is where Fink installs it)
/opt/local/include/fxscintilla/fxscintilla.h (this is where MacPorts
installs it)
Since you mentioned that you''ve experimented with Fink before, I have
a suspicion that a copy of fxscintilla.h is still hanging around in
the /sw/include/fxscintilla directory (but you should check all four
locations to be sure). Remove that, and then start over:
sudo rm -rf /sw/include/fxscintilla
sudo gem install fxruby
Hope this helps,
Lyle