[Gems-users] Compiling Ruby


Date: Mon, 27 Feb 2006 00:22:01 -0800 (PST)
From: cong wang <jameswang99@xxxxxxxxx>
Subject: [Gems-users] Compiling Ruby
Hi Guys:
    I was trying to compile ruby with the following

make PROTOCOL=MOESI_RW_xact_directory
DESTINATION=MOESI_RW_xact_directory

and I get this :


Ruby: Building protocol: MOESI_RW_xact_directory
Ruby: Making slicc
cd ../slicc; make
make[1]: Entering directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/slicc'
SLICC: Running flex and bison
make generated/generated
make[2]: Entering directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/slicc'
make[2]: `generated/generated' is up to date.
make[2]: Leaving directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/slicc'
SLICC: Building slicc executable
make x86-linux/bin/slicc.exec
make[2]: Entering directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/slicc'
make[2]: `x86-linux/bin/slicc.exec' is up to date.
make[2]: Leaving directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/slicc'
make[1]: Leaving directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/slicc'
Ruby: Running slicc
make generated/MOESI_RW_xact_directory/generated
make[1]: Entering directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/ruby'
make[1]: `generated/MOESI_RW_xact_directory/generated'
is up to date.
make[1]: Leaving directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/ruby'
Ruby: Generating ruby objects
make
x86-linux/generated/MOESI_RW_xact_directory/bin/tester.exec
make[1]: Entering directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/ruby'
/usr/bin/g++ -o
x86-linux/generated/MOESI_RW_xact_directory/obj/Chip.o
-c generated/MOESI_RW_xact_directory/Chip.C -DIS_RUBY
-DTARGET_SPARC_V9 -DTARGET_VA_BITS=64
-DTARGET_PA_BITS=64 -Wall -W -Wwrite-strings
-Woverloaded-virtual -Wno-unused  -march=i686 -g -ggdb
-g3 -O2 -finline-functions -DNO_VECTOR_BOUNDS_CHECKS
-DMULTIFACET_NO_OPT_WARN  -DRUBY_DEBUG=true
-Inetwork/simple -I. -I../common -I../common/gzstream
-Ibuffers -Icommon -Islicc_interface -Iprofiler
-Iconfig -Ieventqueue -Isystem -Iinterfaces -Isimics
-Itester -Irecorder -Ilog_tm
-Igenerated/MOESI_RW_xact_directory -I../common/ioutil
-Inetwork -I../simics/x86-linux/obj/include/
-I../simics/x86-linux/obj/include/simics
-I../simics/x86-linux/config
In file included from
generated/MOESI_RW_xact_directory/Types.h:45,
                 from
generated/MOESI_RW_xact_directory/Chip.h:7,
                 from
generated/MOESI_RW_xact_directory/Chip.C:3:
generated/MOESI_RW_xact_directory/CoherenceRequestType.h:9:
error: syntax error
   before `enum'
generated/MOESI_RW_xact_directory/CoherenceRequestType.h:20:
error: parse error
   before `&' token
generated/MOESI_RW_xact_directory/CoherenceRequestType.h:21:
error: parse error
   before `&' token
generated/MOESI_RW_xact_directory/CoherenceRequestType.h:22:
error: syntax
   error before `&' token
generated/MOESI_RW_xact_directory/CoherenceRequestType.h:23:
error: parse error
   before `&' token
generated/MOESI_RW_xact_directory/CoherenceRequestType.h:23:
error: `
   std::ostream& operator<<(...)' must have an
argument of class or enumerated
   type
generated/MOESI_RW_xact_directory/CoherenceRequestType.h:23:
error: `
   std::ostream& operator<<(...)' must take exactly
two arguments
In file included from
generated/MOESI_RW_xact_directory/Types.h:49,
                 from
generated/MOESI_RW_xact_directory/Chip.h:7,
                 from
generated/MOESI_RW_xact_directory/Chip.C:3:
generated/MOESI_RW_xact_directory/RequestMsg.h:29:
error: parse error before `&
   ' token
generated/MOESI_RW_xact_directory/RequestMsg.h:33:
error: `local_Type' was not
   declared in this scope
generated/MOESI_RW_xact_directory/RequestMsg.h:33:
error: ISO C++ forbids
   declaration of `m_Type' with no type
generated/MOESI_RW_xact_directory/RequestMsg.h:33:
error: ISO C++ forbids
   initialization of member `m_Type'
generated/MOESI_RW_xact_directory/RequestMsg.h:33:
error: making `m_Type'
   static
generated/MOESI_RW_xact_directory/RequestMsg.h:33:
error: ISO C++ forbids
   in-class initialization of non-const static member
`m_Type'
generated/MOESI_RW_xact_directory/RequestMsg.h:34:
error: `local_Requestor' was
   not declared in this scope
generated/MOESI_RW_xact_directory/RequestMsg.h:34:
error: ISO C++ forbids
   declaration of `m_Requestor' with no type
generated/MOESI_RW_xact_directory/RequestMsg.h:34:
error: ISO C++ forbids
   initialization of member `m_Requestor'
generated/MOESI_RW_xact_directory/RequestMsg.h:34:
error: making `m_Requestor'
   static
generated/MOESI_RW_xact_directory/RequestMsg.h:34:
error: ISO C++ forbids
   in-class initialization of non-const static member
`m_Requestor'
generated/MOESI_RW_xact_directory/RequestMsg.h:35:
error: `local_Destination'
   was not declared in this scope
generated/MOESI_RW_xact_directory/RequestMsg.h:35:
error: ISO C++ forbids
   declaration of `m_Destination' with no type
generated/MOESI_RW_xact_directory/RequestMsg.h:35:
error: ISO C++ forbids
   initialization of member `m_Destination'
generated/MOESI_RW_xact_directory/RequestMsg.h:35:
error: making `m_Destination
   ' static
generated/MOESI_RW_xact_directory/RequestMsg.h:35:
error: ISO C++ forbids
   in-class initialization of non-const static member
`m_Destination'
generated/MOESI_RW_xact_directory/RequestMsg.h:36:
error: `local_Acks' was not
   declared in this scope
generated/MOESI_RW_xact_directory/RequestMsg.h:36:
error: ISO C++ forbids
   declaration of `m_Acks' with no type
generated/MOESI_RW_xact_directory/RequestMsg.h:36:
error: ISO C++ forbids
   initialization of member `m_Acks'
generated/MOESI_RW_xact_directory/RequestMsg.h:36:
error: making `m_Acks'
   static
generated/MOESI_RW_xact_directory/RequestMsg.h:36:
error: ISO C++ forbids
   in-class initialization of non-const static member
`m_Acks'
generated/MOESI_RW_xact_directory/RequestMsg.h:37:
error: `local_Timestamp' was
   not declared in this scope
generated/MOESI_RW_xact_directory/RequestMsg.h:37:
error: ISO C++ forbids
   declaration of `m_Timestamp' with no type
generated/MOESI_RW_xact_directory/RequestMsg.h:37:
error: ISO C++ forbids
   initialization of member `m_Timestamp'
generated/MOESI_RW_xact_directory/RequestMsg.h:37:
error: making `m_Timestamp'
   static
generated/MOESI_RW_xact_directory/RequestMsg.h:37:
error: ISO C++ forbids
   in-class initialization of non-const static member
`m_Timestamp'
generated/MOESI_RW_xact_directory/RequestMsg.h:38:
error: `local_MessageSize'
   was not declared in this scope
generated/MOESI_RW_xact_directory/RequestMsg.h:38:
error: ISO C++ forbids
   declaration of `m_MessageSize' with no type
generated/MOESI_RW_xact_directory/RequestMsg.h:38:
error: ISO C++ forbids
   initialization of member `m_MessageSize'
generated/MOESI_RW_xact_directory/RequestMsg.h:38:
error: making `m_MessageSize
   ' static
generated/MOESI_RW_xact_directory/RequestMsg.h:38:
error: ISO C++ forbids
   in-class initialization of non-const static member
`m_MessageSize'
generated/MOESI_RW_xact_directory/RequestMsg.h: In
constructor `
   RequestMsg::RequestMsg()':
generated/MOESI_RW_xact_directory/RequestMsg.h:21:
error: `
   CoherenceRequestType_NUM' undeclared (first use
this function)
generated/MOESI_RW_xact_directory/RequestMsg.h:21:
error: (Each undeclared
   identifier is reported only once for each function
it appears in.)
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:40:
error: ISO C++ forbids
   defining types within return type
generated/MOESI_RW_xact_directory/RequestMsg.h:40:
error: syntax error before `
   *' token
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `void destroy()':
generated/MOESI_RW_xact_directory/RequestMsg.h:41:
error: `checkAllocator'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h:41:
error: `s_allocator_ptr'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h:41:
error: invalid use of `this'
   in non-member function
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:42:
error: `
   Allocator<RequestMsg>*s_allocator_ptr' used prior
to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `void
   checkAllocator()':
generated/MOESI_RW_xact_directory/RequestMsg.h:43:
error: `void
   checkAllocator()' used prior to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:45:
error: non-member function `
   const Address& getAddress()' cannot have `const'
method qualifier
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `const Address&
   getAddress()':
generated/MOESI_RW_xact_directory/RequestMsg.h:45:
error: `m_Address'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:46:
error: syntax error before `
   &' token
generated/MOESI_RW_xact_directory/RequestMsg.h:47:
error: non-member function `
   const MachineID& getRequestor()' cannot have
`const' method qualifier
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `const MachineID&
   getRequestor()':
generated/MOESI_RW_xact_directory/RequestMsg.h:47:
error: `m_Requestor'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:48:
error: non-member function `
   const NetDest& getDestination()' cannot have
`const' method qualifier
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `const NetDest&
   getDestination()':
generated/MOESI_RW_xact_directory/RequestMsg.h:48:
error: `m_Destination'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:49:
error: non-member function `
   const int& getAcks()' cannot have `const' method
qualifier
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `const int&
   getAcks()':
generated/MOESI_RW_xact_directory/RequestMsg.h:49:
error: `m_Acks' undeclared
   (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:50:
error: non-member function `
   const int& getTimestamp()' cannot have `const'
method qualifier
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `const int&
   getTimestamp()':
generated/MOESI_RW_xact_directory/RequestMsg.h:50:
error: `m_Timestamp'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:51:
error: non-member function `
   const MessageSizeType& getMessageSize()' cannot
have `const' method
   qualifier
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `const
   MessageSizeType& getMessageSize()':
generated/MOESI_RW_xact_directory/RequestMsg.h:51:
error: `m_MessageSize'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `Address&
   getAddress()':
generated/MOESI_RW_xact_directory/RequestMsg.h:54:
error: new declaration `
   Address& getAddress()'
generated/MOESI_RW_xact_directory/RequestMsg.h:45:
error: ambiguates old
   declaration `const Address& getAddress()'
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:55:
error: syntax error before `
   &' token
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `MachineID&
   getRequestor()':
generated/MOESI_RW_xact_directory/RequestMsg.h:56:
error: new declaration `
   MachineID& getRequestor()'
generated/MOESI_RW_xact_directory/RequestMsg.h:47:
error: ambiguates old
   declaration `const MachineID& getRequestor()'
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `NetDest&
   getDestination()':
generated/MOESI_RW_xact_directory/RequestMsg.h:57:
error: new declaration `
   NetDest& getDestination()'
generated/MOESI_RW_xact_directory/RequestMsg.h:48:
error: ambiguates old
   declaration `const NetDest& getDestination()'
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `int& getAcks()':
generated/MOESI_RW_xact_directory/RequestMsg.h:58:
error: new declaration `int&
   getAcks()'
generated/MOESI_RW_xact_directory/RequestMsg.h:49:
error: ambiguates old
   declaration `const int& getAcks()'
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `int&
   getTimestamp()':
generated/MOESI_RW_xact_directory/RequestMsg.h:59:
error: new declaration `int&
   getTimestamp()'
generated/MOESI_RW_xact_directory/RequestMsg.h:50:
error: ambiguates old
   declaration `const int& getTimestamp()'
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `MessageSizeType&
   getMessageSize()':
generated/MOESI_RW_xact_directory/RequestMsg.h:60:
error: new declaration `
   MessageSizeType& getMessageSize()'
generated/MOESI_RW_xact_directory/RequestMsg.h:51:
error: ambiguates old
   declaration `const MessageSizeType&
getMessageSize()'
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:64:
error: parse error before `&
   ' token
generated/MOESI_RW_xact_directory/RequestMsg.h: In
function `void setType(...)
   ':
generated/MOESI_RW_xact_directory/RequestMsg.h:64:
error: `m_Type' undeclared
   (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h:64:
error: `local_Type'
   undeclared (first use this function)
generated/MOESI_RW_xact_directory/RequestMsg.h: At
global scope:
generated/MOESI_RW_xact_directory/RequestMsg.h:71:
error: non-member function `
   void print(std::ostream&)' cannot have `const'
method qualifier
generated/MOESI_RW_xact_directory/RequestMsg.h:73:
error: `Address m_Address'
   used prior to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h:74:
error: 'CoherenceRequestType
   ' is used as a type, but is not defined as a type.
generated/MOESI_RW_xact_directory/RequestMsg.h:75:
error: `MachineID
   m_Requestor' used prior to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h:76:
error: `NetDest
   m_Destination' used prior to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h:77:
error: `int m_Acks' used
   prior to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h:78:
error: `int m_Timestamp'
   used prior to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h:79:
error: `MessageSizeType
   m_MessageSize' used prior to declaration
generated/MOESI_RW_xact_directory/RequestMsg.h:80:
error: parse error before `}
   ' token
In file included from
generated/MOESI_RW_xact_directory/L1Cache_Controller.h:11,
                from
generated/MOESI_RW_xact_directory/Chip.C:8:
generated/MOESI_RW_xact_directory/L1Cache_Profiler.h:11:
error: syntax error
   before `{' token
generated/MOESI_RW_xact_directory/L1Cache_Profiler.h:16:
error: non-member
   function `void dumpStats(std::ostream&)' cannot
have `const' method
   qualifier
generated/MOESI_RW_xact_directory/L1Cache_Profiler.h:18:
error: parse error
   before `private'
generated/MOESI_RW_xact_directory/L1Cache_Profiler.h:22:
error: parse error
   before `}' token
In file included from
generated/MOESI_RW_xact_directory/Chip.C:8:
generated/MOESI_RW_xact_directory/L1Cache_Controller.h:31:
error: ISO C++
   forbids declaration of `L1Cache_Profiler' with no
type
generated/MOESI_RW_xact_directory/L1Cache_Controller.h:31:
error: parse error
   before `;' token
generated/MOESI_RW_xact_directory/L1Cache_Controller.h:
In static member
   function `static void
L1Cache_Controller::dumpStats(std::ostream&)':
generated/MOESI_RW_xact_directory/L1Cache_Controller.h:22:
error: `s_profiler'
   undeclared (first use this function)
In file included from
generated/MOESI_RW_xact_directory/Directory_Controller.h:11,
                 from
generated/MOESI_RW_xact_directory/Chip.C:9:
generated/MOESI_RW_xact_directory/Directory_Profiler.h:
At global scope:
generated/MOESI_RW_xact_directory/Directory_Profiler.h:11:
error: syntax error
   before `{' token
generated/MOESI_RW_xact_directory/Directory_Profiler.h:16:
error: non-member
   function `void dumpStats(std::ostream&)' cannot
have `const' method
   qualifier
generated/MOESI_RW_xact_directory/Directory_Profiler.h:18:
error: parse error
   before `private'
generated/MOESI_RW_xact_directory/Directory_Profiler.h:20:
error: conflicting
   types for `int m_event_counters[18]'
generated/MOESI_RW_xact_directory/L1Cache_Profiler.h:20:
error: previous
   declaration as `int m_event_counters[42]'
generated/MOESI_RW_xact_directory/Directory_Profiler.h:21:
error: conflicting
   types for `bool m_possible[18][18]'
generated/MOESI_RW_xact_directory/L1Cache_Profiler.h:21:
error: previous
   declaration as `bool m_possible[15][42]'
generated/MOESI_RW_xact_directory/Directory_Profiler.h:22:
error: parse error
   before `}' token
In file included from
generated/MOESI_RW_xact_directory/Chip.C:9:
generated/MOESI_RW_xact_directory/Directory_Controller.h:31:
error: ISO C++
   forbids declaration of `Directory_Profiler' with no
type
generated/MOESI_RW_xact_directory/Directory_Controller.h:31:
error: parse error
   before `;' token
make[1]: ***
[x86-linux/generated/MOESI_RW_xact_directory/obj/Chip.o]
Error 1
make[1]: Leaving directory
`/afs/.ec.auckland.ac.nz/project/hstm/wcon006/GEMS/ruby'
make: *** [all] Error 2

Any idea what that is?
I am on Debian, x86, gcc version 3.3.5, flex version
2.5.31, bison version 2.0.

Thanks in advance.
James Wang
[← Prev in Thread] Current Thread [Next in Thread→]