I am working here on Solaris and i have ruby-installation.
One installation is local, self-compiled and with that version
everything is working fine.
I also have a system-installation and with that ruby-version i cannot
find header files.
For example installing the gem sqlite3-ruby
gem install sqlite3-ruby --
--with-sqlite3-include=/home/xyz/
(sqlite3.h is in home folder) and thats working.
Same command with the system ruby, i get that it cannot find the
sqlite3.h error.
According to the admin, the dev-files for ruby are installed (maybe
wrong?).
thanks skully
Did you check a mkmf.log file under the gem path?
–
Moru
have_header: checking for sqlite3.h… -------------------- no
not working:
“/opt/studio/SOS11/SUNWspro/bin/cc -E -I.
-I/opt/csw/lib/ruby/1.8/sparc-solaris2.8 -I. -I/home/ssk
-I/opt/csw/include -D_FILE_OFFSET_BITS=64 -I/opt/csw/include -xO3
-xarch=v8 -I/opt/csw/include -KPIC conftest.c -o conftest.i”
working:
“gcc -E -I. -I/home/ssk/ruby/lib/ruby/1.8/sparc-solaris2.10 -I.
-I/home/ssk -D_FILE_OFFSET_BITS=64 -g -O2 conftest.c -o conftest.i”
By the looks of it, it seems to use a different compiler, how can i
change that?
May there is a ‘Makefile’ in the directory,
GEM_HOME/gems/sqlite3-ruby-x.x.x/ext/, so you can figure out that file
to set CC and CFLAGS for your environment.
It seems like ‘mkmf’ is using CC which used to compiling her base
ruby. I also got similar errors last one month, so I did edit Makefile
and make extension directly and then install gems via setup.rb
I did,
-
figure out Makefile
$ vi sqlite3-ruby-x.x.x/ext/sqlite3_api/Makefile
-
compile extension. go to sqlite3-ruby-x.x.x/ext/sqlite3_api. and
then,
$ ruby extconf.rb (you can use --with-NAME-include or lib. this will
work fine.)
$ make
$ make install
-
go to root of sqlite3-ruby. install gem directly,
$ ruby setup.rb all --without-ext
-
all done.
but be careful. this gem will not controlled under gem system. you can
build gem also, not use setup.rb, if you want.
my english is very poor, but I think you can very well.
–
Moru