Hi all,
I'm trying to compile Ruby with Simics 3.0.31. I followed the steps
described in GEMS-Ubuntu.pdf. However, I encountered the following
errors:
1) In ruby directory, I did "make PROTOCOL=MSI_MOSI_CMP_directory
DESTINATION=MSI_MOSI_CMP_directory". The make of ruby itself is
successful. When it comes to the Simics part "cd $(SIMICS_EXEC_ROOT);
$(MAKE) ruby", it calls "GNUmakefile" in Simics workspace, which calls
"
$(MAKE) -d -C "$(SIMICS_WORKSPACE)/$(HOST_TYPE)
/obj/modules/$@" \
-f "$(SIMICS_WORKSPACE)
/modules/$@/Makefile"
\
MOD_MAKEFILE="$(SIMICS_WORKSPACE)
/modules/$@/Makefile"
\
HOST_TYPE=$(HOST_TYPE) \
SRC_BASE="$(SIMICS_WORKSPACE)/modules" \
MODULE_MAKEFILE="$(SIMICS_BASE)/config/module.mk" \
TARGET=$@",
which calls the make file in "gems/ruby/module/Makefile", which in term
calls "$(SIMICS_BASE)/config/module.mk", which gives the following
error message:
***********************
/export/research57/xiaoke/simics/gcc/bin/g++ module_id.c -M -MG -m32
-DTARGET_VA_BITS=64 -DTARGET_PA_BITS=64 -DSPARC -DADD_ARCH_TO_API
-DSIMICS30 -DUSE_MODULE_HOST_CONFIG
-I/export/research57/weixun/tools/gems/simics_3_workspace/modules/../../ruby
-I/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby
-I.
-I/export/research57/weixun/tools/gems/simics-3.0.31/src/include
"-DSIMICS_3_0_API" | sed -e 's,module_id\.o,& module_id.d,g' >
module_id.d
DEP ruby.d
/export/research57/xiaoke/simics/gcc/bin/g++
/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby/ruby.c
-M
-MG -m32 -DTARGET_VA_BITS=64 -DTARGET_PA_BITS=64 -DSPARC
-DADD_ARCH_TO_API -DSIMICS30 -DUSE_MODULE_HOST_CONFIG
-I/export/research57/weixun/tools/gems/simics_3_workspace/modules/../../ruby
-I/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby
-I.
-I/export/research57/weixun/tools/gems/simics-3.0.31/src/include
"-DSIMICS_3_0_API" | sed -e 's,ruby\.o,& ruby.d,g' > ruby.d
make[1]: Leaving directory
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/obj/modules/ruby'
make[1]: Entering directory
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/obj/modules/ruby'
Using the Simics 3.0 API for ruby module
make[1]: Leaving directory
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/obj/modules/ruby'
make: *** [ruby] Error 2
wewang@tornado>
***********************
If I give "-d" option in ruby/module/Makefile, the following error
message may be relevant:
***********************
Using the Simics 3.0 API Reaping winning child 0x02369c70 PID 25000
Live child 0x02369c70 (api_warning) PID 25001
for ruby module[0m
Reaping winning child 0x02369c70 PID 25001
Removing child 0x02369c70 PID 25001 from chain.
Successfully remade target file `api_warning'.
Considering target file
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/lib/ruby.so'.
File
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/lib/ruby.so'
does
not exist.
Considering target file `ruby.o'.
File `ruby.o' does not exist.
Looking for an implicit rule for `ruby.o'.
Trying pattern rule with stem `ruby'.
Trying implicit prerequisite `ruby.c'.
Found prerequisite `ruby.c' as VPATH
`/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby/ruby.c'
Trying rule prerequisite
`/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby/Makefile'.
Found an implicit rule for `ruby.o'.
Pruning file
`/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby/ruby.c'.
Considering target file
`/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby/Makefile'.
File
`/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby/Makefile'
was
considered already.
Pruning file
`/export/research57/weixun/tools/gems/simics_3_workspace/modules/ruby/ruby.c'.
Pruning file `/usr/include/errno.h'.
Pruning file `/usr/include/features.h'.
Pruning file `/usr/include/sys/cdefs.h'.
Pruning file `/usr/include/bits/wordsize.h'.
Pruning file `/usr/include/gnu/stubs.h'.
Pruning file `gnu/stubs-32.h'.
Finished prerequisites of target file `ruby.o'.
Giving up on target file `ruby.o'.
Finished prerequisites of target file
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/lib/ruby.so'.
Giving up on target file
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/lib/ruby.so'.
Finished prerequisites of target file `all'.
Giving up on target file `all'.
make[1]: Leaving directory
`/export/research57/weixun/tools/gems/simics_3_workspace/x86-linux/obj/modules/ruby'
***********************
It seems like that ruby.o is not generated!
Help needed...
Thanks.!!!!
--
Best Regards,
Wang, Weixun
Department of Computer & Information Science & Engineering
Gator College of Engineering
University of Florida
Gainesville, FL 32611
http://www.cise.ufl.edu/~wewang
_______________________________________________