I am following instructions to http://people.apache.org/~rooneg/talks/ruby-extensions/ruby-extensions.html (page 6) and my make command is only returning make: Nothing to be done for 'all'.
Does anyone have any ideas?
I am using ruby 1.9.2 and I'm on OSX 10.6.8
SHELL = /bin/sh
#### Start of system configuration section. ####
srcdir = .
topdir = /Users/pcoder/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1
hdrdir = /Users/pcoder/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1
arch_hdrdir = /Users/pcoder/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/$(arch)
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
prefix = $(DESTDIR)/Users/pcoder/.rvm/rubies/ruby-1.9.2-p290
rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
exec_prefix = $(prefix)
vendorhdrdir = $(rubyhdrdir)/vendor_ruby
sitehdrdir = $(rubyhdrdir)/site_ruby
rubyhdrdir = $(includedir)/$(RUBY_BASE_NAME)-$(ruby_version)
vendordir = $(rubylibprefix)/vendor_ruby
sitedir = $(rubylibprefix)/site_ruby
ridir = $(datarootdir)/$(RI_BASE_NAME)
mandir = $(datarootdir)/man
localedir = $(datarootdir)/locale
libdir = $(exec_prefix)/lib
psdir = $(docdir)
pdfdir = $(docdir)
dvidir = $(docdir)
htmldir = $(docdir)
infodir = $(datarootdir)/info
docdir = $(datarootdir)/doc/$(PACKAGE)
oldincludedir = $(DESTDIR)/usr/include
includedir = $(prefix)/include
localstatedir = $(prefix)/var
sharedstatedir = $(prefix)/com
sysconfdir = $(prefix)/etc
datadir = $(datarootdir)
datarootdir = $(prefix)/share
libexecdir = $(exec_prefix)/libexec
sbindir = $(exec_prefix)/sbin
bindir = $(exec_prefix)/bin
rubylibdir = $(rubylibprefix)/$(ruby_version)
archdir = $(rubylibdir)/$(arch)
sitelibdir = $(sitedir)/$(ruby_version)
sitearchdir = $(sitelibdir)/$(sitearch)
vendorlibdir = $(vendordir)/$(ruby_version)
vendorarchdir = $(vendorlibdir)/$(sitearch)
CC = gcc
CXX = g++
LIBRUBY = $(LIBRUBY_SO)
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static
OUTFLAG = -o
COUTFLAG = -o
RUBY_EXTCONF_H =
cflags = $(optflags) $(debugflags) $(warnflags)
optflags = -O3
debugflags = -ggdb
warnflags = -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long
CFLAGS = -fno-common -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64 -fno-common -pipe
INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
DEFS =
CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE $(DEFS) $(cppflags)
CXXFLAGS = $(CFLAGS) $(cxxflags)
ldflags = -L. -Wl,-syslibroot /Developer/SDKs/MacOSX10.6.sdk -arch x86_64
dldflags = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace
ARCH_FLAG =
DLDFLAGS = $(ldflags) $(dldflags)
LDSHARED = $(CC) -dynamic -bundle
LDSHAREDXX = $(CXX) -dynamic -bundle
AR = ar
EXEEXT =
RUBY_BASE_NAME = ruby
RUBY_INSTALL_NAME = ruby
RUBY_SO_NAME = ruby.1.9.1
arch = x86_64-darwin10.7.0
sitearch = $(arch)
ruby_version = 1.9.1
ruby = /Users/pcoder/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
RUBY = $(ruby)
RM = rm -f
RM_RF = $(RUBY) -run -e rm -- -rf
RMDIRS = $(RUBY) -run -e rmdir -- -p
MAKEDIRS = mkdir -p
INSTALL = /usr/bin/install -c
INSTALL_PROG = $(INSTALL) -m 0755
INSTALL_DATA = $(INSTALL) -m 644
COPY = cp
#### End of system configuration section. ####
preload =
libpath = . $(libdir)
LIBPATH = -L. -L$(libdir)
DEFFILE =
CLEANFILES = mkmf.log
DISTCLEANFILES =
DISTCLEANDIRS =
extout =
extout_prefix =
target_prefix =
LOCAL_LIBS =
LIBS = $(LIBRUBYARG_SHARED) -lpthread -ldl -lobjc
SRCS =
OBJS =
TARGET =
DLLIB =
EXTSTATIC =
STATIC_LIB =
BINDIR = $(bindir)
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
RUBYLIBDIR = $(sitelibdir)$(target_prefix)
RUBYARCHDIR = $(sitearchdir)$(target_prefix)
HDRDIR = $(rubyhdrdir)/ruby$(target_prefix)
ARCHHDRDIR = $(rubyhdrdir)/$(arch)/ruby$(target_prefix)
TARGET_SO = $(DLLIB)
CLEANLIBS = $(TARGET).bundle
CLEANOBJS = *.o *.bak
all: Makefile
static: $(STATIC_LIB)
.PHONY: all install static install-so install-rb
.PHONY: clean clean-so clean-rb
clean-rb-default::
clean-rb::
clean-so::
clean: clean-so clean-rb-default clean-rb
#-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
distclean-rb-default::
distclean-rb::
distclean-so::
distclean: clean distclean-so distclean-rb-default distclean-rb
#-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
#-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
#-$(RMDIRS) $(DISTCLEANDIRS)
realclean: distclean
install: install-so install-rb
install-so: Makefile
install-rb: pre-install-rb install-rb-default
install-rb-default: pre-install-rb-default
pre-install-rb: Makefile
pre-install-rb-default: Makefile
site-install: site-install-so site-install-rb
site-install-so: install-so
site-install-rb: install-rb
all: Makefile
this string is wrong, all target should make your extension, and not a Makefile itself.
here is a part of Makefile generated from a random extconf.rb on my system:
all: $(DLLIB)
yours should be the same. a possible error is in extconf.rb.
my extconf.rb:
require 'mkmf'
have_header('ruby.h') or missing('ruby.h')
create_makefile('ext')
files ext.c & ext.h are presend and contain actual extension C code
Related
I'm attempting to convert this make file to a Windows make file. I haven't done anything like this before, and need some help. I've done research but don't really understand the plethora of errors that I'm running into. Is there an easy way to port this? Is it possible? Could this be made cross platform for cmake? This is all new to me.
#FLAGS = -lm -L/usr/pub/lib -lefence -o
#CC = cc -O2 -fullwarn -TENV:large_GOT
#CC = cc -g -Wall
CC = gcc -O2 # at least for SunOS
#CC = cc -g
#CC = cc -O2 -fullwarn
#CC = cc -O2
FLAGS = -lm -o
SOURCE = stride.c splitstr.c rdpdb.c initchn.c geometry.c thr2one.c one2thr.c filename.c tolostr.c strutil.c place_h.c hbenergy.c memory.c helix.c sheet.c rdmap.c phipsi.c command.c molscr.c die.c hydrbond.c mergepat.c fillasn.c escape.c p_jrnl.c p_rem.c p_atom.c p_helix.c p_sheet.c p_turn.c p_ssbond.c p_expdta.c p_model.c p_compnd.c report.c nsc.c area.c ssbond.c chk_res.c chk_atom.c turn.c pdbasn.c dssp.c outseq.c chkchain.c elem.c measure.c asngener.c p_endmdl.c stred.c contact_order.c contact_map.c
OBJECT = ${SOURCE:.c=.o}
BINDIR = .
.c.o:
$(CC) -c $< -o $#
stride : $(OBJECT)
$(CC) $(OBJECT) $(FLAGS) $(BINDIR)/stride${ARCH}
$(OBJECT) : stride.h protot.h
clean:
rm -f $(OBJECT)
show:
echo $(SOURCE)
Currently, I make a project with scons.
I compiled source codes and it is time to link them.
However, I got an error that ld cannot find object files.
The SConscript is located in src/kernel32, and
import os, sys
# Compile CPP
env_gpp_options = {
'CXX' : 'x86_64-pc-linux-g++',
'CXXFLAGS' : '-std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti',
'LINK' : 'x86_64-pc-linux-ld',
'LINKFLAGS' : '-melf_i386 -T scripts/elf_i386.x -nostdlib -e main -Ttext 0x10200',
}
env_gpp = Environment(**env_gpp_options)
env_gpp.Append(ENV = {'PATH' : os.environ['PATH']})
object_cpp_list = Glob('*.cpp')
for object_cpp in object_cpp_list:
env_gpp.Object(object_cpp)
# Find all object file
object_target_list = Glob('*.o')
# Linking
env_link_target = 'kernel32.elf'
env_gpp.Program(env_link_target, object_target_list)
and message I got is
x86_64-pc-linux-g++ -o build/kernel32/cpu.o -c -std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti src/kernel32/cpu.cpp
x86_64-pc-linux-g++ -o build/kernel32/main.o -c -std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti src/kernel32/main.cpp
x86_64-pc-linux-g++ -o build/kernel32/memory.o -c -std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti src/kernel32/memory.cpp
x86_64-pc-linux-g++ -o build/kernel32/pageManager.o -c -std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti src/kernel32/pageManager.cpp
x86_64-pc-linux-g++ -o build/kernel32/utils.o -c -std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti src/kernel32/utils.cpp
x86_64-pc-linux-ld -o build/kernel32/kernel32.elf -melf_i386 -T scripts/elf_i386.x -nostdlib -e main -Ttext 0x10200 build/kernel32/asmUtils.o build/kernel32/cpu.o build/kernel32/main.o build/kernel32/memory.o build/kernel32/pageManager.o build/kernel32/utils.o
x86_64-pc-linux-ld: cannot find main.o
scons: *** [build/kernel32/kernel32.elf] Error 1
scons: building terminated because of errors.
I checked the directory, build/kernel32/, and I found main.o file.
What is my mistake?
Is there an way to change working directory for scons?
Please let me know what I missed.
You can try this:
import os, sys
# Compile CPP
env_gpp_options = {
'CXX' : 'x86_64-pc-linux-g++',
'CXXFLAGS' : '-std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti',
'LINK' : 'x86_64-pc-linux-ld',
'LINKFLAGS' : '-melf_i386 -T scripts/elf_i386.x -nostdlib -e main -Ttext 0x10200',
}
env_gpp = Environment(**env_gpp_options)
env_gpp.Append(ENV = {'PATH' : os.environ['PATH']})
object_cpp_list = Glob('*.cpp')
object_target_list = []
for object_cpp in object_cpp_list:
object_target_list.extend(env_gpp.Object(object_cpp))
# Linking
env_link_target = 'kernel32.elf'
env_gpp.Program(env_link_target, object_target_list)
Or
import os, sys
# Compile CPP
env_gpp_options = {
'CXX' : 'x86_64-pc-linux-g++',
'CXXFLAGS' : '-std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti',
'LINK' : 'x86_64-pc-linux-ld',
'LINKFLAGS' : '-melf_i386 -T scripts/elf_i386.x -nostdlib -e main -Ttext 0x10200',
}
env_gpp = Environment(**env_gpp_options)
env_gpp.Append(ENV = {'PATH' : os.environ['PATH']})
object_cpp_list = Glob('*.cpp')
# Linking
env_link_target = 'kernel32.elf'
env_gpp.Program(env_link_target, object_cpp_list)
This is full scons scripts.
In project root directory,
#SConstruct
build_dir = 'build'
# Build
SConscript(['src/SConscript'], variant_dir = build_dir, duplicate = 0)
# Clean
Clean('.', build_dir)
In src directory
#SConscript for src
SConscript(['bootloader/SConscript',
'kernel32/SConscript'])
In kernel32 directory
#SConscript for kernel32
import os, sys
# Build entry
env_entry = Environment(tools=['default', 'nasm'])
target_entry = 'entry.bin'
object_entry = 'entry.s'
output_entry = env_entry.Object(target_entry, object_entry)
# Compile CPP
env_gpp_options = {
'CXX' : 'x86_64-pc-linux-g++',
'CXXFLAGS' : '-std=c++11 -g -m32 -ffreestanding -fno-exceptions -fno-rtti',
'LINK' : 'x86_64-pc-linux-ld',
'LINKFLAGS' : '-melf_i386 -T scripts/elf_i386.x -nostdlib -e main -Ttext 0x10200',
}
env_gpp = Environment(**env_gpp_options)
env_gpp.Append(ENV = {'PATH' : os.environ['PATH']})
object_cpp_list = Glob('*.cpp')
for object_cpp in object_cpp_list:
env_gpp.Object(object_cpp)
# Compile ASM
env_nasm = Environment(tools=['default', 'nasm'])
env_nasm.Append(ASFLAGS='-f elf32')
object_nasm_list = Glob('*.asm')
for object_nasm in object_nasm_list:
env_nasm.Object(object_nasm)
# Find all object file
object_target_list = Glob('*.o')
object_target_list.append('entry.bin')
# Linking
env_link_target = 'kernel32.elf'
env_gpp.Program(env_link_target, object_target_list)
Thank you for your attention.
when I run puppet client command, got the 500 error. I found the debug log in puppet master server below:
(nginx version:1.8.0, install the passenger with passenger-install-nginx-module)
Message from application: An error occurred while starting the web application. It advertised a Unix domain socket that has a different owner than expected (should be UID 0, but actual UID was 52)
the passenger error html raw output:
An error occurred while starting the web application. It advertised a Unix domain socket that has a different owner than expected (should be UID 0, but actual UID was 52)
Raw process output:
(empty)
Error ID
178719de
Application root
/etc/puppet/rack/allinone_02
Environment (value of RAILS_ENV, RACK_ENV, WSGI_ENV, NODE_ENV and PASSENGER_APP_ENV)
production
Ruby interpreter command
/usr/bin/ruby
User and groups
uid=0(root) gid=0(root) groups=0(root)
General Ruby interpreter information
RUBY_VERSION = 1.8.7
RUBY_PLATFORM = x86_64-linux
RUBY_ENGINE = nil
RubyGems version = 1.3.7
RubyGems paths = ["/root/.gem/ruby/1.8", "/usr/lib/ruby/gems/1.8"]
Ruby configuration (RbConfig::CONFIG)
datarootdir = /usr/share
DLLWRAP =
setup = Setup
OBJDUMP =
TRY_LINK =
LIBRUBY_LDSHARED = gcc -shared
SHELL = /bin/sh
sitearch = x86_64-linux
datadir = /usr/share
ARCH_FLAG =
debugflags =
vendordir = /usr/lib/ruby
LDFLAGS = -L. -rdynamic -Wl,-export-dynamic
ASFLAGS =
DLEXT = so
build_alias = x86_64-redhat-linux-gnu
LIBPATHENV = LD_LIBRARY_PATH
docdir = /usr/share/doc/$(PACKAGE)
ARCHFILE =
TEENY = 7
LIBRUBYARG = -lruby
topdir = /usr/lib64/ruby/1.8/x86_64-linux
archdir = /usr/lib64/ruby/1.8/x86_64-linux
libdir = /usr/lib64
target_os = linux
CP = cp
PACKAGE_NAME =
CPPFLAGS =
build = x86_64-redhat-linux-gnu
INSTALL_DATA = /usr/bin/install -c -m 644
sitedir = /usr/lib/ruby/site_ruby
PACKAGE_TARNAME =
libexecdir = /usr/libexec
AR = ar
MINOR = 8
CPPOUTFILE = -o conftest.i
sitelibdir = /usr/lib/ruby/site_ruby/1.8
psdir = /usr/share/doc/$(PACKAGE)
OUTFLAG = -o
SOLIBS = -lpthread -lrt -ldl -lcrypt -lm
target_vendor = redhat
configure_args = '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--with-default-kcode=none' '--enable-shared' '--enable-pthread' '--disable-rpath' '--with-readline-include=/usr/include/readline5' '--with-readline-lib=/usr/lib64/readline5' '--enable-dtrace' '--with-sitedir=/usr/lib/ruby/site_ruby' '--with-sitearchdir=/usr/lib64/ruby/site_ruby' '--with-vendordir=/usr/lib/ruby' '--with-vendorarchdir=/usr/lib64/ruby' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'target_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fno-strict-aliasing'
NM =
target = x86_64-redhat-linux-gnu
prefix = /usr
LIBRUBY_SO = libruby.so.1.8.7
sbindir = /usr/sbin
ruby_mm_version = 1.8
DTRACE_HEADER = dtrace.h
vendorlibdir = /usr/lib/ruby/1.8
PACKAGE_BUGREPORT =
ECHO_C =
EXTSTATIC =
exec_prefix = /usr
DEFS =
LIBRUBYARG_SHARED = -lruby
sysconfdir = /etc
DLDFLAGS =
EXEEXT =
rubyw_install_name =
RANLIB = ranlib
SET_MAKE =
PATH_SEPARATOR = :
EXTOUT = .ext
RM = rm -f
target_alias = x86_64-redhat-linux-gnu
RUBY_INSTALL_NAME = ruby
MAJOR = 1
LIBRUBYARG_STATIC = -lruby-static
target_cpu = x86_64
INSTALL_SCRIPT = /usr/bin/install -c
RUBY_SO_NAME = ruby
cppflags =
localedir = /usr/share/locale
MAINLIBS =
host = x86_64-redhat-linux-gnu
PREP = miniruby
sharedstatedir = /var/lib
NROFF = /usr/bin/nroff
STATIC =
LIBPATHFLAG = -L%s
vendorarchdir = /usr/lib64/ruby/1.8/x86_64-linux
AS = as
OBJEXT = o
includedir = /usr/include
htmldir = /usr/share/doc/$(PACKAGE)
EXPORT_PREFIX =
rubylibdir = /usr/lib/ruby/1.8
CFLAGS = -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fno-strict-aliasing -fPIC
host_vendor = redhat
MAKEFILES = Makefile
PACKAGE_VERSION =
RDOCTARGET =
INSTALL_PROGRAM = /usr/bin/install -c
EGREP = /bin/grep -E
WINDRES =
DLDLIBS = -lc
GNU_LD = yes
build_vendor = redhat
PACKAGE_STRING =
INSTALL = /usr/bin/install -c
ALLOCA =
optflags =
host_os = linux-gnu
localstatedir = /var
host_alias = x86_64-redhat-linux-gnu
YFLAGS =
COMMON_LIBS =
ruby_version = 1.8
oldincludedir = /usr/include
LIBRUBY = libruby.so.1.8.7
LIBS = -lpthread -lrt -ldl -lcrypt -lm
dvidir = /usr/share/doc/$(PACKAGE)
pdfdir = /usr/share/doc/$(PACKAGE)
STRIP = strip -S -x
sitearchdir = /usr/lib64/ruby/site_ruby/1.8/x86_64-linux
ENABLE_SHARED = yes
LIBRUBY_A = libruby-static.a
mandir = /usr/share/man
MAKEDIRS = mkdir -p
CPP = gcc -E
MANTYPE = doc
arch = x86_64-linux
COMMON_MACROS =
GREP = /bin/grep
LIBRUBY_ALIASES = libruby.so.1.8 libruby.so
RUBYW_INSTALL_NAME =
build_cpu = x86_64
ECHO_T =
bindir = /usr/bin
PATCHLEVEL = 352
LINK_SO =
ECHO_N = -n
DLEXT2 =
COMMON_HEADERS =
LIBEXT = a
DESTDIR =
ruby_install_name = ruby
CC = gcc
LDSHARED = gcc -shared
build_os = linux-gnu
LIBRUBY_DLDFLAGS = -Wl,-soname,libruby.so.1.8
infodir = /usr/share/info
cflags =
RPATHFLAG =
CCDLFLAGS = -fPIC
LN_S = ln -s
host_cpu = x86_64
YACC = bison -y
Ruby load path ($LOAD_PATH)
/usr/lib/ruby/site_ruby/1.8
/usr/lib64/ruby/site_ruby/1.8
/usr/lib64/ruby/site_ruby/1.8/x86_64-linux
/usr/lib/ruby/site_ruby
/usr/lib64/ruby/site_ruby
/usr/lib64/site_ruby/1.8
/usr/lib64/site_ruby/1.8/x86_64-linux
/usr/lib64/site_ruby
/usr/lib/ruby/1.8
/usr/lib64/ruby/1.8
/usr/lib64/ruby/1.8/x86_64-linux
id puppet
uid=52(puppet) gid=52(puppet) groups=52(puppet)
the ps info:
puppet 22573 1.0 0.0 140756 49276 ? S 11:00 0:01 Passenger AppPreloader: /etc/puppet/rack/allinone_02
I wanted to know why the Passenger AppPreloader start with puppet not root.
how can i change the own to root.
I figured it out , by adding the config below to config.ru
ARGV << "--rundir" << "/var/run/puppet"
now everything is ok
My redmine stoped working
Now all that i see is:
Web application could not be started
An error occurred while starting up the preloader. It exited before signalling successful startup back to Phusion Passenger. Please read this article for more information about this problem.
Raw process output:
(empty)
Error ID
bed958bb
Application root
/usr/local/www/redmine
Environment (value of RAILS_ENV, RACK_ENV, WSGI_ENV, NODE_ENV and PASSENGER_APP_ENV)
production
Ruby interpreter command
/usr/local/bin/ruby19
User and groups
uid=80(www) gid=80(www) groups=80(www)
Environment variables
SERVER_SOFTWARE=Apache/2.2.29 (FreeBSD) Phusion_Passenger/4.0.53 PHP/5.3.29 with Suhosin-Patch mod_ssl/2.2.29 OpenSSL/1.0.1e-freebsd DAV/2
SERVER_PROTOCOL=HTTP/1.1
SERVER_NAME=rm.i.vvtf.ru
SERVER_ADMIN=it#vvtf.ru
SERVER_ADDR=192.168.10.202
SERVER_PORT=443
REMOTE_ADDR=192.168.10.45
REMOTE_PORT=48936
REQUEST_METHOD=GET
QUERY_STRING=
HTTPS=on
DOCUMENT_ROOT=/usr/local/www/redmine/public/
REQUEST_URI=/
UNIQUE_ID=VDTOd8CoCsoAADX0RNAAAAAA
SSL_TLS_SNI=rm.i.vvtf.ru
PASSENGER_APP_ENV=production
NODE_ENV=production
WSGI_ENV=production
RACK_ENV=production
RAILS_ENV=production
NODE_PATH=/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/node_lib
PYTHONUNBUFFERED=1
IN_PASSENGER=1
PWD=/usr/local/www/redmine
HOME=/nonexistent
SHELL=/usr/sbin/nologin
LOGNAME=www
USER=www
PASSENGER_DEBUG_DIR=/tmp/passenger.spawn-debug.nQowvt7keA
PATH=/sbin:/bin:/usr/sbin:/usr/bin
LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib
RC_PID=13777
Ulimits
cpu time (seconds, -t) unlimited
file size (512-blocks, -f) unlimited
data seg size (kbytes, -d) 524288
stack size (kbytes, -s) 65536
core file size (512-blocks, -c) unlimited
max memory size (kbytes, -m) unlimited
locked memory (kbytes, -l) 131072
max user processes (-u) 5547
open files (-n) 28890
virtual mem size (kbytes, -v) unlimited
swap limit (kbytes, -w) unlimited
sbsize (bytes, -b) unlimited
pseudo-terminals (-p) unlimited
System metrics
------------- General -------------
Kernel version : 10.0-RELEASE-p9
Uptime : 52m 39s
Load averages : 0.99%, 0.83%, 0.81%
------------- CPU -------------
Number of CPUs : 2
Average CPU usage : 0% -- 0% user, 0% nice, 0% system, 100% idle
CPU 1 : 0% -- 0% user, 0% nice, 0% system, 100% idle
CPU 2 : 0% -- 0% user, 0% nice, 0% system, 100% idle
------------- Memory -------------
RAM total : 1003 MB
RAM used : 461 MB (46%)
RAM free : 541 MB
Swap total : 2560 MB
Swap used : 0 MB (0%)
Swap free : 2560 MB
General Ruby interpreter information
RUBY_VERSION = 1.9.3
RUBY_PLATFORM = i386-freebsd10
RUBY_ENGINE = ruby
RubyGems version = 1.8.29
RubyGems paths = ["/usr/local/lib/ruby/gems/1.9"]
Ruby configuration (RbConfig::CONFIG)
DESTDIR =
MAJOR = 1
MINOR = 9
TEENY = 1
PATCHLEVEL = 547
INSTALL = /usr/bin/install -c -o root -g wheel
EXEEXT =
prefix = /usr/local
ruby_install_name = ruby19
RUBY_INSTALL_NAME = ruby19
RUBY_SO_NAME = ruby19
exec = exec
ruby_pc = ruby-1.9.pc
PACKAGE = ruby
BUILTIN_TRANSSRCS = newline.c
USE_RUBYGEMS = YES
MANTYPE = doc
NROFF = /usr/bin/nroff
vendorhdrdir = /usr/local/include/ruby-1.9//vendor_ruby
sitehdrdir = /usr/local/include/ruby-1.9//site_ruby
rubyhdrdir = /usr/local/include/ruby-1.9/
UNIVERSAL_INTS =
UNIVERSAL_ARCHNAMES =
configure_args = '--with-rubyhdrdir=/usr/local/include/ruby-1.9/' '--with-rubylibprefix=/usr/local/lib/ruby' '--docdir=/usr/local/share/doc/ruby19' '--with-soname=ruby19' '--program-prefix=' '--program-suffix=19' '--enable-shared' '--enable-pthread' '--disable-rpath' '--with-ruby-version=minor' '--with-sitedir=/usr/local/lib/ruby/site_ruby' '--with-vendordir=/usr/local/lib/ruby/vendor_ruby' '--disable-install-capi' '--disable-install-rdoc' '--disable-libedit' '--with-readline-prefix=/usr/local' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/info/' '--build=i386-portbld-freebsd10' 'build_alias=i386-portbld-freebsd10' 'CC=cc' 'CFLAGS=-O2 -pipe -fno-strict-aliasing' 'LDFLAGS= -Wl,-rpath,/usr/lib:/usr/local/lib' 'LIBS=-L/usr/local/lib -pthread' 'CPPFLAGS=-I/usr/local/include' 'CXX=c++' 'CXXFLAGS=-O2 -pipe -fno-strict-aliasing' 'CPP=cpp'
vendordir = /usr/local/lib/ruby/vendor_ruby
sitedir = /usr/local/lib/ruby/site_ruby
ruby_version = 1.9
sitearch = i386-freebsd10
arch = i386-freebsd10
RI_BASE_NAME = ri
ridir = /usr/local/share/ri
rubylibprefix = /usr/local/lib/ruby
MAKEFILES = Makefile
PLATFORM_DIR =
THREAD_MODEL = pthread
SYMBOL_PREFIX =
EXPORT_PREFIX =
COMMON_HEADERS =
COMMON_MACROS =
COMMON_LIBS =
MAINLIBS = -pthread
ENABLE_SHARED = yes
DLDLIBS = -lc
SOLIBS = -lexecinfo -lcrypt -lm -L/usr/local/lib -pthread
LIBRUBYARG_SHARED = -lruby19
LIBRUBYARG_STATIC = -lruby19-static
LIBRUBYARG = -lruby19
LIBRUBY = libruby19.so.19
LIBRUBY_ALIASES = libruby19.so
LIBRUBY_SO = libruby19.so.19
LIBRUBY_A = libruby19-static.a
RUBYW_INSTALL_NAME =
rubyw_install_name =
LIBRUBY_DLDFLAGS = -Wl,-soname,libruby19.so.19
LIBRUBY_LDSHARED = cc -shared
EXTDLDFLAGS =
warnflags = -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration
debugflags =
optflags = -O3
cxxflags = -O3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration
cflags = -O3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration
cppflags = -I/usr/local/include
NULLCMD = :
INSTALLDOC = nodoc
CAPITARGET = nodoc
RDOCTARGET = nodoc
EXECUTABLE_EXTS =
ARCHFILE =
LIBRUBY_RELATIVE = no
EXTOUT = .ext
PREP = miniruby
TEST_RUNNABLE = yes
setup = Setup
EXTSTATIC =
STRIP = strip
TRY_LINK =
LIBPATHENV = LD_LIBRARY_PATH
RPATHFLAG =
LIBPATHFLAG = -L%s
LINK_SO =
LIBEXT = a
DLEXT2 =
DLEXT = so
LDSHAREDXX = c++ -shared
LDSHARED = cc -shared
CCDLFLAGS = -fPIC
STATIC =
ARCH_FLAG =
DLDFLAGS =
ALLOCA =
codesign =
POSTLINK = :
WERRORFLAG = -Werror
CHDIR = cd -P
RMALL = rm -fr
RMDIRS = rmdir -p
RMDIR = rmdir
CP = cp
RM = rm -f
PKG_CONFIG = pkg-config
DOXYGEN =
DOT =
MAKEDIRS = /bin/mkdir -p
MKDIR_P = /bin/mkdir -p
INSTALL_DATA = install -o root -g wheel -m 0644
INSTALL_SCRIPT = install -o root -g wheel -m 555
INSTALL_PROGRAM = install -s -o root -g wheel -m 555
SET_MAKE =
LN_S = ln -s
NM = nm
DLLWRAP =
WINDRES =
OBJCOPY = :
OBJDUMP = objdump
ASFLAGS =
AS = as
AR = ar
RANLIB = ranlib
try_header =
COUTFLAG = -o
OUTFLAG = -o
CPPOUTFILE = -o conftest.i
GNU_LD = yes
GCC = yes
EGREP = /usr/bin/egrep
GREP = /usr/bin/grep
CPP = cpp
CXXFLAGS = -O2 -pipe -fno-strict-aliasing
CXX = c++
OBJEXT = o
CPPFLAGS = -I/usr/local/include -I/usr/local/include
LDFLAGS = -L. -Wl,-rpath,/usr/lib:/usr/local/lib -rdynamic
CFLAGS = -O2 -pipe -fno-strict-aliasing -fPIC
CC = cc
target_os = freebsd10
target_vendor = portbld
target_cpu = i386
target = i386-portbld-freebsd10
host_os = freebsd10
host_vendor = portbld
host_cpu = i386
host = i386-portbld-freebsd10
RUBYW_BASE_NAME = rubyw
RUBY_BASE_NAME = ruby
build_os = freebsd10
build_vendor = portbld
build_cpu = i386
build = i386-portbld-freebsd10
RUBY_RELEASE_DATE = 2014-05-14
RUBY_PROGRAM_VERSION = 1.9.3
BASERUBY = ruby
target_alias =
host_alias =
build_alias = i386-portbld-freebsd10
LIBS = -lexecinfo -lcrypt -lm -L/usr/local/lib -pthread
ECHO_T =
ECHO_N = -n
ECHO_C =
DEFS =
mandir = /usr/local/man
localedir = /usr/local/share/locale
libdir = /usr/local/lib
psdir = /usr/local/share/doc/ruby19
pdfdir = /usr/local/share/doc/ruby19
dvidir = /usr/local/share/doc/ruby19
htmldir = /usr/local/share/doc/ruby19
infodir = /usr/local/info
docdir = /usr/local/share/doc/ruby19
oldincludedir = /usr/include
includedir = /usr/local/include
localstatedir = /usr/local/var
sharedstatedir = /usr/local/com
sysconfdir = /usr/local/etc
datadir = /usr/local/share
datarootdir = /usr/local/share
libexecdir = /usr/local/libexec
sbindir = /usr/local/sbin
bindir = /usr/local/bin
program_transform_name = s&$&19&;s&^&&
exec_prefix = /usr/local
PACKAGE_URL =
PACKAGE_BUGREPORT =
PACKAGE_STRING =
PACKAGE_VERSION =
PACKAGE_TARNAME =
PACKAGE_NAME =
PATH_SEPARATOR = :
SHELL = /bin/sh
rubylibdir = /usr/local/lib/ruby/1.9
archdir = /usr/local/lib/ruby/1.9/i386-freebsd10
sitelibdir = /usr/local/lib/ruby/site_ruby/1.9
sitearchdir = /usr/local/lib/ruby/site_ruby/1.9/i386-freebsd10
vendorlibdir = /usr/local/lib/ruby/vendor_ruby/1.9
vendorarchdir = /usr/local/lib/ruby/vendor_ruby/1.9/i386-freebsd10
topdir = /usr/local/lib/ruby/1.9/i386-freebsd10
Ruby load path ($LOAD_PATH)
/usr/local/lib/ruby/site_ruby/1.9
/usr/local/lib/ruby/site_ruby/1.9/i386-freebsd10
/usr/local/lib/ruby/site_ruby
/usr/local/lib/ruby/vendor_ruby/1.9
/usr/local/lib/ruby/vendor_ruby/1.9/i386-freebsd10
/usr/local/lib/ruby/vendor_ruby
/usr/local/lib/ruby/1.9
/usr/local/lib/ruby/1.9/i386-freebsd10
Ruby loaded libraries ($LOADED_FEATURES)
enumerator.so
/usr/local/lib/ruby/1.9/i386-freebsd10/enc/encdb.so
/usr/local/lib/ruby/1.9/i386-freebsd10/enc/trans/transdb.so
/usr/local/lib/ruby/site_ruby/1.9/rubygems/defaults.rb
/usr/local/lib/ruby/1.9/i386-freebsd10/rbconfig.rb
/usr/local/lib/ruby/site_ruby/1.9/rubygems/deprecate.rb
/usr/local/lib/ruby/site_ruby/1.9/rubygems/exceptions.rb
/usr/local/lib/ruby/site_ruby/1.9/rubygems/custom_require.rb
/usr/local/lib/ruby/site_ruby/1.9/rubygems.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger.rb
/usr/local/lib/ruby/1.9/i386-freebsd10/etc.so
/usr/local/lib/ruby/1.9/fileutils.rb
/usr/local/lib/ruby/1.9/tmpdir.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/utils/tmpio.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/platform_info.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/platform_info/operating_system.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/platform_info/ruby.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/platform_info/binary_compatibility.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/buildout/ruby/ruby-1.9.3-x86-freebsd10/passenger_native_support.so
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/native_support.rb
/usr/local/lib/ruby/1.9/i386-freebsd10/socket.so
/usr/local/lib/ruby/1.9/socket.rb
/usr/local/lib/ruby/1.9/thread.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/ruby_core_enhancements.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/utils/tmpdir.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/utils.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/preloader_shared_helpers.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/constants.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/public_api.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/debug_logging.rb
/usr/local/lib/ruby/1.9/shellwords.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/utils/shellwords.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/loader_shared_helpers.rb
/usr/local/lib/ruby/1.9/i386-freebsd10/fcntl.so
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/message_channel.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/message_client.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/utils/native_support_utils.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/utils/unseekable_socket.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/request_handler/thread_handler.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/request_handler.rb
/usr/local/lib/ruby/1.9/i386-freebsd10/stringio.so
/usr/local/lib/ruby/gems/1.9/gems/passenger-4.0.53/lib/phusion_passenger/utils/tee_input.rb
/usr/local/lib/ruby/gems/1.9/gems/passenger- 4.0.53/lib/phusion_passenger/rack/thread_handler_extension.rb
I had try to reinstall redmine, passenger, etc....
I had try to config httpd.conf - the same result.
Now it just don't work.
Always the same error (only error id is different every time).
I can show apache log file if this need.
Always the same result.
If i try in the /use/local/www/redmine/ to start rail server with "bundle exec rails server" i got this: "=> Booting WEBrick => Rails 3.2.19 application starting in development on 0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server Illegal instruction (core dumped) "
HELP ME to fix it!!!
Maybe this is a really obvious answer, but I'm trying to extend Ruby using C in a Windows environment and I can't make the extension when I run mingw32-make it gets as far as generating a file called "forktest-i386-mingw32.def" and then says "No rule to make target 'ruby.h', needed by 'forktest.o'".
Forktest is the name of the extension that I'm trying to make.
The makefile was generated by ruby's own create_makefile command and it's really convoluted so I can't make heads or tales of it, but here it is anyway:
SHELL = /bin/sh
# V=0 quiet, V=1 verbose. other values don't work.
V = 0
Q1 = $(V:1=)
Q = $(Q1:0=#)
n=$(NULLCMD)
ECHO1 = $(V:1=#$n)
ECHO = $(ECHO1:0=#echo)
#### Start of system configuration section. ####
srcdir = .
topdir = /D/Programs/Ruby193/include/ruby-1.9.1
hdrdir = /D/Programs/Ruby193/include/ruby-1.9.1
arch_hdrdir = D:/Programs/Ruby193/include/ruby-1.9.1/$(arch)
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
DESTDIR = D:
prefix = $(DESTDIR)/Programs/Ruby193
rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
exec_prefix = $(prefix)
vendorhdrdir = $(rubyhdrdir)/vendor_ruby
sitehdrdir = $(rubyhdrdir)/site_ruby
rubyhdrdir = $(includedir)/$(RUBY_BASE_NAME)-$(ruby_version)
vendordir = $(rubylibprefix)/vendor_ruby
sitedir = $(rubylibprefix)/site_ruby
ridir = $(datarootdir)/$(RI_BASE_NAME)
mandir = $(datarootdir)/man
localedir = $(datarootdir)/locale
libdir = $(exec_prefix)/lib
psdir = $(docdir)
pdfdir = $(docdir)
dvidir = $(docdir)
htmldir = $(docdir)
infodir = $(datarootdir)/info
docdir = $(datarootdir)/doc/$(PACKAGE)
oldincludedir = $(DESTDIR)/usr/include
includedir = $(prefix)/include
localstatedir = $(prefix)/var
sharedstatedir = $(prefix)/com
sysconfdir = $(prefix)/etc
datadir = $(datarootdir)
datarootdir = $(prefix)/share
libexecdir = $(exec_prefix)/libexec
sbindir = $(exec_prefix)/sbin
bindir = $(exec_prefix)/bin
rubylibdir = $(rubylibprefix)/$(ruby_version)
archdir = $(rubylibdir)/$(arch)
sitelibdir = $(sitedir)/$(ruby_version)
sitearchdir = $(sitelibdir)/$(sitearch)
vendorlibdir = $(vendordir)/$(ruby_version)
vendorarchdir = $(vendorlibdir)/$(sitearch)
NULLCMD = :
CC = gcc
CXX = g++
LIBRUBY = lib$(RUBY_SO_NAME).dll.a
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static
OUTFLAG = -o
COUTFLAG = -o
RUBY_EXTCONF_H =
cflags = $(optflags) $(debugflags) $(warnflags)
optflags = -O3
debugflags = -g
warnflags = -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration
CFLAGS = $(cflags)
INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
DEFS =
CPPFLAGS = $(DEFS) $(cppflags)
CXXFLAGS = $(CFLAGS) $(cxxflags)
ldflags = -L.
dldflags = -Wl,--enable-auto-image-base,--enable-auto-import $(DEFFILE)
ARCH_FLAG =
DLDFLAGS = $(ldflags) $(dldflags)
LDSHARED = $(CC) -shared $(if $(filter-out -g -g0,$(debugflags)),,-s)
LDSHAREDXX = $(CXX) -shared $(if $(filter-out -g -g0,$(debugflags)),,-s)
AR = ar
EXEEXT = .exe
RUBY_BASE_NAME = ruby
RUBY_INSTALL_NAME = ruby
RUBY_SO_NAME = msvcrt-ruby191
arch = i386-mingw32
sitearch = i386-msvcrt
ruby_version = 1.9.1
ruby = D:/Programs/Ruby193/bin/ruby
RUBY = $(ruby)
RM = rm -f
RM_RF = $(RUBY) -run -e rm -- -rf
RMDIRS = rmdir --ignore-fail-on-non-empty -p
MAKEDIRS = /usr/bin/mkdir -p
INSTALL = /usr/bin/install -c
INSTALL_PROG = $(INSTALL) -m 0755
INSTALL_DATA = $(INSTALL) -m 644
COPY = cp
#### End of system configuration section. ####
preload =
libpath = . $(libdir)
LIBPATH = -L. -L$(libdir)
DEFFILE = $(TARGET)-$(arch).def
CLEANFILES = mkmf.log $(DEFFILE)
DISTCLEANFILES =
DISTCLEANDIRS =
extout =
extout_prefix =
target_prefix =
LOCAL_LIBS =
LIBS = $(LIBRUBYARG_SHARED) -lshell32 -lws2_32 -limagehlp
SRCS = forktest.c ruby.c
OBJS = forktest.o ruby.o
TARGET = forktest
DLLIB = $(TARGET).so
EXTSTATIC =
STATIC_LIB =
BINDIR = $(bindir)
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
RUBYLIBDIR = $(sitelibdir)$(target_prefix)
RUBYARCHDIR = $(sitearchdir)$(target_prefix)
HDRDIR = $(rubyhdrdir)/ruby$(target_prefix)
ARCHHDRDIR = $(rubyhdrdir)/$(arch)/ruby$(target_prefix)
TARGET_SO = $(DLLIB)
CLEANLIBS = $(TARGET).so
CLEANOBJS = *.o *.bak
all: $(DLLIB)
static: $(STATIC_LIB)
.PHONY: all install static install-so install-rb
.PHONY: clean clean-so clean-rb
clean-rb-default::
clean-rb::
clean-so::
clean: clean-so clean-rb-default clean-rb
#-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
distclean-rb-default::
distclean-rb::
distclean-so::
distclean: clean distclean-so distclean-rb-default distclean-rb
#-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
#-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
#-$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true
realclean: distclean
install: install-so install-rb
install-so: $(RUBYARCHDIR)
install-so: $(RUBYARCHDIR)/$(DLLIB)
$(RUBYARCHDIR)/$(DLLIB): $(DLLIB)
#-$(MAKEDIRS) $(#D)
$(INSTALL_PROG) $(DLLIB) $(#D)
install-rb: pre-install-rb install-rb-default
install-rb-default: pre-install-rb-default
pre-install-rb: Makefile
pre-install-rb-default: Makefile
pre-install-rb-default:
$(ECHO) installing default forktest libraries
$(RUBYARCHDIR):
$(Q) $(MAKEDIRS) $#
site-install: site-install-so site-install-rb
site-install-so: install-so
site-install-rb: install-rb
.SUFFIXES: .c .m .cc .mm .cxx .cpp .o
.cc.o:
$(ECHO) compiling $(<)
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$# -c $<
.mm.o:
$(ECHO) compiling $(<)
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$# -c $<
.cxx.o:
$(ECHO) compiling $(<)
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$# -c $<
.cpp.o:
$(ECHO) compiling $(<)
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$# -c $<
.c.o:
$(ECHO) compiling $(<)
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$# -c $<
.m.o:
$(ECHO) compiling $(<)
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$# -c $<
$(DLLIB): $(DEFFILE) $(OBJS) Makefile
$(ECHO) linking shared-object $(DLLIB)
#-$(RM) $(#)
$(Q) $(LDSHARED) -o $# $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
$(DEFFILE):
$(ECHO) generating $(#)
$(Q) $(RUBY) -e "puts 'EXPORTS', '' + 'Init_$(TARGET)'.sub(/\..*\z/,'')" > $#
$(OBJS): $(hdrdir)/ruby.h $(hdrdir)/ruby/defines.h $(arch_hdrdir)/ruby/config.h
I had the same issue and found that I accidentally had the MinGW Make on my path. This meant Ruby DevKit found that version before it's own msys version.
The mingw version doesn't handle the /D/Programs/Ruby193/ style of paths and produced the "No rule to make target 'ruby.h'..." error.
My solution was to remove MinGW make from my PATH so that Ruby DevKit found the msys version of Make when it runs (when it prints "Temporarily enhancing PATH to include DevKit...").
I checked my version of Make from the msys.bat environment (just run C:\devkit\msys.bat):
$ which make
# Should print a location like: C:\devkit\bin\make.exe
And check the version like this:
$ make --version
The correct msys version included this in the last line:
This program built for i686-pc-msys
The incorrect MinGW version output this:
GNU Make 4.1
Built for i686-w64-mingw32
I'm using ruby 2.2.3p173 and DevKit-mingw64-32-4.7.2-20130224-1151-sfx but this seems to be a PATH issue, not a ruby issue.