Dear Sirs
I think I've made the thinks from bullet 2 at file:
$GEMS/common/Makefile.common
I'm sending the file with the changes I made, the most important is:
SIMICS_INCLUDE_ROOT := /opt/virtutech/simics-3.0.31/src/include
I' some person know that problem I will appreciate your help.....
.SECONDARY:
.PRECIOUS: %/created
GEMS_ROOT = ~/gems-2.1
include $(GEMS_ROOT)/common/Makefile.simics_version
HOST_TYPE := $(shell $(GEMS_ROOT)/scripts/calc_host.sh)
SIMICS_ROOT := $(GEMS_ROOT)/simics
SLICC_ROOT := $(GEMS_ROOT)/slicc
PROTOCOL_ROOT := $(GEMS_ROOT)/protocols
OPAL_ROOT := $(GEMS_ROOT)/opal
ifeq ($(SIMICS_VERSION),2.2.X)
SIMICS_ROOT := $(GEMS_ROOT)/simics
SIMICS_EXEC_ROOT := /dev/null22
SIMICS_INCLUDE_ROOT := /dev/null22
else
ifeq ($(SIMICS_VERSION),3.0.31)
SIMICS_ROOT := /dev/null30
SIMICS_EXEC_ROOT := $(GEMS_ROOT)/simics
# NOTE: This variable must be updated to point to the src/include directory
# of your Simics 3.0 installation
# CAMBIO 12:57PM
# SIMICS_INCLUDE_ROOT := $(GEMS_ROOT)/simics_exec/src/include
# SIMICS_INCLUDE_ROOT := ~/gems-2.1/simics_exec/src/include
#cambio 09/04/08 11:20pm
SIMICS_INCLUDE_ROOT := /opt/virtutech/simics-3.0.31/src/include
else
SIMICS_ROOT := /dev/blah
SIMICS_EXEC_ROOT := /dev/foo
SIMICS_INCLUDE_ROOT := /dev/bar
endif
endif
SLICC := $(GEMS_ROOT)/slicc/$(HOST_TYPE)/bin/slicc.exec
OBJ_DIR := $(HOST_TYPE)/obj
BIN_DIR := $(HOST_TYPE)/bin
OBJ = $(addprefix $(OBJ_DIR)/,$(SRC_C:.c=.o) $(SRC_CPP:.C=.o))
DEP = $(addprefix $(OBJ_DIR)/,$(SRC_C:.c=.d) $(SRC_CPP:.C=.d))
VPATH_INCLUDES := $(patsubst %,-I%,$(subst :, ,$(VPATH)))
WARN_FLAGS := -Wall -W -Wwrite-strings -Woverloaded-virtual -Wno-unused
#-Wshadow -Wold-style-cast -Wundef -Wconversion
SHELL := /bin/sh
# define the following to see more error about the parser (when parsing
parser.y)
YACC := bison
YFLAGS := --verbose --defines
LEX := flex
LFLAGS :=
# make sure simics is configured to use the same version of gcc as below.
# for last drop of performance, you could try to reduce code size with
template
# repository. This takes much longer to build.
#LDFLAGS += -frepo
# file to check for: ../simics/config/host-flags.x86-linux
# ../simics/x86-linux/config/host-config
# ../simics/x86-linux/config/host-config.h
#CC_VERSION=3.4.1
CC_VERSION=4.2
ifeq ($(HOST_TYPE),amd64-linux)
#CC = /s/gcc-3.4.1/bin/g++
#CC = /usr/bin/g++
CC = /usr/bin/g++-4.2
OPT_FLAGS = -m64 -march=opteron -fPIC
LDFLAGS += -ggdb -g3 -Wl,-R/s/gcc-3.4.1/lib64
MODULE_LDFLAGS += -Wl,-R/s/gcc-3.4.1/lib64
else
ifeq ($(HOST_TYPE),v9-sol8-64)
# CC = purify -best-effort -leaks-at-exit=yes -chain-length="15"
/s/gcc-3.4.1/bin/g++ -static
# CC = /s/gcc-3.4.3/bin/g++ -I/s/getopt-0/include
CC = g++ -I/s/getopt-0/include
OPT_FLAGS = -m64 -mcpu=v9 -DUSE_DIRENT
LDFLAGS += -m64 -L/s/getopt-0/lib -lgetopt
else
ifeq ($(HOST_TYPE),x86-linux)
#CC = /s/gcc-3.4.1/bin/g++
#CC = /usr/bin/g++
CC = /usr/bin/g++-4.2
OPT_FLAGS = -march=i686
LDFLAGS += -ggdb -g3
else
CC = /dev/null
endif
endif
endif
# optionally, you could hard code library paths here, though not recommended
#LDFLAGS += -Wl,-Ryour/path/here
# debug flags
# g1 - g3 product minimal to maximal debug info
OPT_FLAGS += -g -ggdb -g3
# other flags
#OPT_FLAGS += -O0 -w
#OPT_FLAGS += -O0 -Wall -pedantic-errors -Wno-long-long
#OPT_FLAGS += -O0 -DNO_VECTOR_BOUNDS_CHECKS
#OPT_FLAGS += -O1
#OPT_FLAGS += -O2 -finline-functions
OPT_FLAGS += -O2 -finline-functions -DNO_VECTOR_BOUNDS_CHECKS
-DMULTIFACET_NO_OPT_WARN
CP := /bin/cp -f
MV := /bin/mv -f
RM := /bin/rm -f
LN := /bin/ln -f
ifeq ($(TARGET_MACHINE_TYPE),SPARC)
SPECIAL_FLAGS += -DSPARC
endif
ifeq ($(SIMICS_VERSION),2.2.X)
SPECIAL_FLAGS += -DSIMICS22X
else
ifeq ($(SIMICS_VERSION),3.0)
SPECIAL_FLAGS += -DADD_ARCH_TO_API -DSIMICS30
else
SPECIAL_FLAGS += -stopcompile # Not really a flag, but something should
complain with an
# error in this case
endif
endif
LDFLAGS += -lz
CFLAGS = $(SPECIAL_FLAGS) $(WARN_FLAGS) $(OPT_FLAGS) $(BUILD_FLAGS)
$(DEBUG_FLAGS) $(VPATH_INCLUDES) $(INCLUDES)
DEPEND_FLAGS = -MM -MG
# Rules for generating the object files and dependence files
$(OBJ_DIR)/%.o: %.C $(OBJ_DIR)/created
$(CC) -o $@ -c $< $(CFLAGS)
$(OBJ_DIR)/%.o: %.c $(OBJ_DIR)/created
$(CC) -o $@ -c $< $(CFLAGS)
$(OBJ_DIR)/%.d: %.C $(OBJ_DIR)/created
$(SHELL) -ec '$(CC) $(DEPEND_FLAGS) $(CFLAGS) $< | sed -e
'\''s@^\(.*\)\.o:@$@:@'\'' | sed -e '\''s@^\(.*\)\.d:@\1.d \1.o:@'\'' >
$@ #'
$(OBJ_DIR)/%.d: %.c $(OBJ_DIR)/created
$(SHELL) -ec '$(CC) $(DEPEND_FLAGS) $(CFLAGS) $< | sed -e
'\''s@^\(.*\)\.o:@$@:@'\'' | sed -e '\''s@^\(.*\)\.d:@\1.d \1.o:@'\'' >
$@ #'
.l.c:
$(error wrong rule)
.y.c:
$(error wrong rule)
# Rule to make sure we create the directories as needed
%/created:
mkdir -p $(dir $@)
touch $@
.PHONY: all clean tags
Regards
Eng. Mario Raffo
MSc. Student on Microelectronics
São Paulo University
> You will need to specify the location of the headers (Point 7, bullet 2
> on the Setup for Simics 3.0.x page) and set your SIMICS_VERSION flag in
> Makefile.SIMICS_VERSION appropriately (bullet 1).
>
> Regards,
> Dan
>
> Mario Raffo wrote:
>> Dear Sirs
>>
>>
>> I'm a student from São Paulo University. I will use the GEMS, but I've
>> some problems:
>>
>> I've do the instructions for install simics and gems:
>> http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/Setup_for_Simics_3.0.X
>>
>> But when I' want do the instructions for the next link:
>> http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/QuickStart
>>
>> And if I do :
>> cd $GEMS/ruby
>> make PROTOCOL=MOSI_SMP_bcast DESTINATION=MOSI_SMP_bcast
>> I see the next on screen:
>>
>> Ruby: Building protocol: MOSI_SMP_bcast
>> Ruby: Making slicc
>> cd ../slicc; make
>> make[1]: Entering directory `/root/gems-2.1/slicc'
>> SLICC: Running flex and bison
>> make generated/generated
>> make[2]: Entering directory `/root/gems-2.1/slicc'
>> make[2]: `generated/generated' is up to date.
>> make[2]: Leaving directory `/root/gems-2.1/slicc'
>> SLICC: Building slicc executable
>> make x86-linux/bin/slicc.exec
>> make[2]: Entering directory `/root/gems-2.1/slicc'
>> make[2]: `x86-linux/bin/slicc.exec' is up to date.
>> make[2]: Leaving directory `/root/gems-2.1/slicc'
>> make[1]: Leaving directory `/root/gems-2.1/slicc'
>> Ruby: Running slicc
>> make generated/MOSI_SMP_bcast/generated
>> make[1]: Entering directory `/root/gems-2.1/ruby'
>> make[1]: `generated/MOSI_SMP_bcast/generated' is up to date.
>> make[1]: Leaving directory `/root/gems-2.1/ruby'
>> Ruby: Generating ruby objects
>> make x86-linux/generated/MOSI_SMP_bcast/bin/tester.exec
>> make[1]: Entering directory `/root/gems-2.1/ruby'
>> make[1]: Circular x86-linux/generated/MOSI_SMP_bcast/obj/init.o <-
>> default_param.h dependency dropped.
>> make[1]: *** No rule to make target `simics/api.h', needed by
>> `x86-linux/generated/MOSI_SMP_bcast/obj/attrparse.o'. Stop.
>> make[1]: Leaving directory `/root/gems-2.1/ruby'
>> make: *** [all] Error 2
>>
>>
>>
>>
>> And if I do :
>> cd $GEMS/opal
>> make module DESTINATION=MOSI_SMP_bcast
>> I see the next on screen:
>>
>> Opal: building module
>> make generated/generated
>> make[1]: Entering directory `/root/gems-2.1/opal'
>> make[1]: `generated/generated' is up to date.
>> make[1]: Leaving directory `/root/gems-2.1/opal'
>> make BUILD_FLAGS=-DSIMICS module_go
>> make[1]: Entering directory `/root/gems-2.1/opal'
>> make[1]: *** No rule to make target `simics/api.h', needed by
>> `x86-linux/obj/ccops.o'. Stop.
>> make[1]: Leaving directory `/root/gems-2.1/opal'
>> make: *** [module] Error 2
>>
>>
>>
>> At this moment I don't know very well if I have problems with a wrong
>> mistake at installation process, probably in the Makefiles
>>
>>
>> $GEMS/common/Makefile.simics_version
>> $GEMS/common/Makefile.common
>> $GEMS/ruby/module/Makefile
>> $GEMS/opal/module/Makefile
>> $GEMS/tourmaline/module/Makefile
>>
>>
>> The mistakes at ruby and opal are (in my opinion) that don't have access
>> to 'simics/api.h', but I've this file at next directory:
>> /opt/virtutech/simics-3.0.31/src/include/simics
>>
>>
>> If any person know this problem...... I will appreciate your help.....
>>
>> Regards
>>
>> Eng. Mario Raffo
>> MSc. Student on Microelectronics
>> São Paulo University
>>
>>
>>
>>
>
> --
> http://www.cs.wisc.edu/~gibson [esc]:wq!
>
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx
> https://lists.cs.wisc.edu/mailman/listinfo/gems-users
> Use Google to search the GEMS Users mailing list by adding
> "site:https://lists.cs.wisc.edu/archive/gems-users/" to your search.
>
>
>
> --
> This message was scanned for spam and viruses by BitDefender.
> For more information please visit http://linux.bitdefender.com/
>
>
--
This message was scanned for spam and viruses by BitDefender.
For more information please visit http://linux.bitdefender.com/
|