From: ts Date: 2001-09-23T00:04:08+09:00 Subject: [ruby-talk:21541] Re: irb >>>>> "F" == Fabio writes: F> The first time, I've compiled ruby without touching the ext/Setup file; F> and the result was the same. So I've read in README to remove the comments from F> the lines indicating the name of some modules to link them statically. F> Well, the result is the same in any case :( ruby try to make dynamic library, if it can't this is generally because : * it don't find a library * it don't find an include file For example in ext/readline pigeon% cat extconf.rb require "mkmf" dir_config("readline") have_library("user32", nil) if /cygwin/ === RUBY_PLATFORM have_library("ncurses", "tgetnum") or have_library("termcap", "tgetnum") or have_library("curses", "tgetnum") if have_header("readline/readline.h") and have_header("readline/history.h") and have_library("readline", "readline") if have_func("rl_filename_completion_function") $CFLAGS += "-DREADLINE_42_OR_LATER" end create_makefile("readline") end pigeon% The line `dir_config("readline")' means that you can give the options --with-readline-dir --with-readline-lib --with-readline-include to specify where is located the libraries and include files for readline If it can make a dynamic library, it will not able to make a static library. This is why you must modify ext/Setup, *only* for extensions that ruby can build. If you run ruby extconf.rb in ext/readline it will say you what lib or include it can't find. Guy Decoux