Re: [Gems-users] Ruby compile fail, g++: could


Date: Sun, 31 Aug 2008 11:35:03 -0500
From: "Teague, Patrick" <patrick.teague@xxxxxxxxxxx>
Subject: Re: [Gems-users] Ruby compile fail, g++: could
Actually, I'm using amd64-linux, but these notes seem like I could fairly easily get it set up for 64bit.

Thanks for the help.
________________________________________
From: gems-users-bounces@xxxxxxxxxxx [gems-users-bounces@xxxxxxxxxxx] On Behalf Of Fuad Tabba [fuad@xxxxxxxxxxxxxxxxx]
Sent: Sunday, August 31, 2008 5:09 AM
To: Gems Users
Subject: Re: [Gems-users] Ruby compile fail, g++: could

No worries. To be honest, I had quite a hard time getting this thing working myself! :)

I'm assuming your pc is a 32bit one, or at least your Kubuntu the32 bit one...

My environment is pretty much the same as yours. I've written some notes for my own reference to help me set it up. My main interest is in logtm and atmtp; so you might need to change some of the parameters accordingly, but the basic idea should be the same.

So what I suggest you do, especially if you're not sure of the state of your current files is start with a freshly unpacked gems tar and maybe try and set it up again by following my notes:-

----------------------------

# A. Install Simics
tar xvf simics-pkg-20-3.0.30-linux.tar
cd simics-3.0-install/
sh install-simics.sh #remember the key
#copy license to /simics-3.0.30/licenses

# B. Install Gems

# step 0
#modify  .bashrc
export GEMS=~/gems-2.1 #change this to where you want to install gems
export SIMICS=$GEMS/simics
export RUBY=$GEMS/ruby
export SIMICS_EXTRA_LIB=./modules
export SIMICS_INSTALL=~/simics-3.0.30 #change this to where simics is installed
export MYCC=/usr/bin/g++-3.4
export ATMTP=$GEMS/simics/home/MESI_CMP_filter_directory

#make sure that the environment variables above are set before proceeding

# Following are the steps from
# http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/Setup_for_Simics_3.0.X<http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/Setup_for_Simics_3.0.X>
# step 1
# download gems-release2.1.tar.gz
tar xvzf gems-release2.1.tar.gz

#step 2 is installing simics


# step 3
cd $GEMS/
mkdir simics_3_workspace
cd $SIMICS_INSTALL/bin
./workspace-setup $GEMS/simics_3_workspace

# For Transactional Memory (atmtp and logtm) to work, before step 4
# from http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/Transactional_Memory

sed -i "s/XACT_MEMORY: false/XACT_MEMORY: true/g;s/REMOVE_SINGLE_CYCLE_DCACHE_FAST_PATH: false/REMOVE_SINGLE_CYCLE_DCACHE_FAST_PATH: true/g;s/NUMBER_OF_VIRTUAL_NETWORKS: 4/NUMBER_OF_VIRTUAL_NETWORKS: 5/g" $GEMS/ruby/config/rubyconfig.defaults

# step 4
cd $GEMS/scripts/
sed -i "s#\[SET PATH TO SIMICS INSTALL HERE\]#$SIMICS_INSTALL#g" $GEMS/scripts/makesymlinks.sh
ln -s $SIMICS_INSTALL/import import

# step 5
cd $GEMS/simics_3_workspace
../scripts/makesymlinks.sh

# step 6
cd $GEMS/
ln -s simics_3_workspace simics

# step 7
sed -i "s/SIMICS_VERSION := 2.2.X/SIMICS_VERSION := 3.0/g" $GEMS/common/Makefile.simics_version
sed -i 's#CC =  /s/gcc-3.4.1/bin/g++#CC = '"$MYCC"'#g;s#SIMICS_INCLUDE_ROOT := $(GEMS_ROOT)/simics_exec/src/include#SIMICS_INCLUDE_ROOT :='" $SIMICS_INSTALL"'/src/include#g' $GEMS/common/Makefile.common
sed -i '/^GEMS_ROOT/d;s/#GEMS_ROOT/GEMS_ROOT/g' $GEMS/ruby/module/Makefile
sed -i "s#gcc#/usr/bin/gcc-3.4#g" $GEMS/simics/compiler.mk<http://compiler.mk>

#Quick Start
cd $GEMS/ruby
make PROTOCOL=MESI_CMP_filter_directory DESTINATION=MESI_CMP_filter_directory

# D. Additional Mods
In atmtp.py add:-

mfacet.run_sim_command("ruby0.setparam XACT_STORE_PREDICTOR_ENTRIES 0");
mfacet.run_sim_command("ruby0.setparam XACT_STORE_PREDICTOR_HISTORY 0");
mfacet.run_sim_command("ruby0.setparam XACT_STORE_PREDICTOR_THRESHOLD 0");

--------------------------

Hope this helps.

Cheers,
/Fuad


On Sun, Aug 31, 2008 at 11:40 AM, Teague, Patrick <patrick.teague@xxxxxxxxxxx<mailto:patrick.teague@xxxxxxxxxxx>> wrote:
>
> Thanks for you help, Fuad.  I take no offense to stating the obvious.  I know that a lot of times the obvious questions are the ones that need asking (I ask them a lot when I'm helping someone.), but in this case I have tried the instructions.
>
> I figure I must have edited the wrong stuff or the done the wrong thing.  I have looked through all the makefiles to see where that crazy path (/usr/bin/x86_64-linux-gnu-gcc-3.4.6) is getting inserted, but there are so many env variables that I can't see what all is modifying the path.
>
> As far as environment information:
> OS: Kubuntu 8.04
> Simics: 3.0.31
> GCC: trying to use 3.4.6 (native is 4.2.3)
>
> I wonder if I should attach the Makefile.common and ruby Makefile.  I'll hold off on that for now though.  Don't want to clog a bunch of mailboxes with attachments.  (Can you even attach files to the list?)
>
> -Patrick
> ________________________________________
> From: gems-users-bounces@xxxxxxxxxxx<mailto:gems-users-bounces@xxxxxxxxxxx> [gems-users-bounces@xxxxxxxxxxx<mailto:gems-users-bounces@xxxxxxxxxxx>] On Behalf Of Fuad Tabba [fuad@xxxxxxxxxxxxxxxxx<mailto:fuad@xxxxxxxxxxxxxxxxx>]
> Sent: Saturday, August 30, 2008 5:20 PM
> To: Gems Users
> Subject: Re: [Gems-users] Ruby compile fail, g++: could
>
> Hi Patrick,
>
> I apologize if I'm stating the obvious, but have you followed the instructions at:-
> http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/Setup_for_Simics_3.0.X [if you're using simics 3]
> http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/Setup [for simics 2]
>
> particularly the last step? These documents mention all the places in the configuration and make files that need to be adjusted for different environments...
>
> Plus more info on your environment could be helpful, which linux distro are you running, simics version, gcc version, etc...
>
> Cheers,
> /Fuad
>
>
> On Sun, Aug 31, 2008 at 3:45 AM, Teague, Patrick <patrick.teague@xxxxxxxxxxx<mailto:patrick.teague@xxxxxxxxxxx><mailto:patrick.teague@xxxxxxxxxxx<mailto:patrick.teague@xxxxxxxxxxx>>> wrote:
> Somewhere in all the continuous lines of makefiles, the path to g++/gcc is getting really messed up.  I don't know why this is.
>
> pj@bagend:~/gems/ruby$ make PROTOCOL=MOSI_SMP_bcast DESTINATION=MOSI_SMP_bcast
> ls: cannot access generated/MOSI_SMP_bcast/*.C: No such file or directory
> Ruby: Building protocol: MOSI_SMP_bcast
> Ruby: Making slicc
> cd ../slicc; make
> make[1]: Entering directory `/home/pj/gems/slicc'
> SLICC: Running flex and bison
> make generated/generated
> make[2]: Entering directory `/home/pj/gems/slicc'
> make[2]: `generated/generated' is up to date.
> make[2]: Leaving directory `/home/pj/gems/slicc'
> SLICC: Building slicc executable
> make amd64-linux/bin/slicc.exec
> make[2]: Entering directory `/home/pj/gems/slicc'
> /usr/bin/g++ -V 3.4.6 -o amd64-linux/obj/parser.o -c generated/parser.c -DYY_NO_UNPUT -Wall -W -Wwrite-strings -Woverloaded-virtual -Wno-unused  -m64 -march=x86-64 -fPIC -g -ggdb -g3 -O2 -finline-functions -DNO_VECTOR_BOUNDS_CHECKS -DMULTIFACET_NO_OPT_WARN   -I. -I../common -Igenerated -Isymbols -Igenerator -Iast
> -----------------------
> g++: couldn't run '/usr/bin/x86_64-linux-gnu-gcc-3.4.6': No such file or directory
> -----------------------
> make[2]: *** [amd64-linux/obj/parser.o] Error 1
> make[2]: Leaving directory `/home/pj/gems/slicc'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/home/pj/gems/slicc'
> make: *** [all] Error 2
>
> -Patrick
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx<mailto:Gems-users@xxxxxxxxxxx><mailto:Gems-users@xxxxxxxxxxx<mailto: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.
>
>
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx<mailto: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.
>

[← Prev in Thread] Current Thread [Next in Thread→]