Project

General

Profile

Actions

Bug #5796

closed

main.c is not compiled during cross compilation

Added by luislavena (Luis Lavena) over 12 years ago. Updated over 12 years ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 2.0.0dev r34103
Backport:
[ruby-core:41786]

Description

Hello,

Attempting to cross-compile trunk against i686-w64-mingw32 (GCC 4.6) is failing to compile main.c when executed a simple "make".

Used 1.8.7-p352 as BASERUBY:
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin10.8.0]

The configure line: configure --enable-shared --disable-install-doc --host=i686-w64-mingw32

$ make
	CC = i686-w64-mingw32-gcc
	LD = ld
	LDSHARED = i686-w64-mingw32-gcc -shared -s
	CFLAGS = -O3 -fno-omit-frame-pointer -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration 
	XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT
	CPPFLAGS =   -I. -I.ext/include/i386-mingw32 -I../include -I..
	DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libmsvcrt-ruby191.dll.a msvcrt-ruby191.def -Wl,--stack,0x00200000,--enable-auto-import  
	SOLIBS = msvcrt-ruby191.res.o -lshell32 -lws2_32 -limagehlp  
config.status: creating i386-mingw32-fake.rb
rbconfig.rb updated
generating enc.mk
generating msvcrt-ruby191.rc
...
compiling ../win32/win32.c
../win32/win32.c: In function ‘rb_chsize’:
../win32/win32.c:4667:11: warning: variable ‘end’ set but not used [-Wunused-but-set-variable]
generating prelude.c
compiling prelude.c
compiling ../dmyext.c
linking static-library libmsvcrt-ruby191-static.a
i686-w64-mingw32-gcc: error: main.o: No such file or directory
make: *** [libmsvcrt-ruby191-static.a] Error 1

If I do make ruby it now compiles main.o:

$ make ruby
compiling ruby.res.o
generating msvcrt-ruby191.def
linking shared-library msvcrt-ruby191.dll
Creating library file: libmsvcrt-ruby191.dll.a
compiling ../main.c
linking ruby.exe

And I can issue make again to build extensions

Actions #1

Updated by nobu (Nobuyoshi Nakada) over 12 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r34131.
Luis, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


Actions

Also available in: Atom PDF

Like0
Like0