No description
Find a file
Andreas Sandberg 9544e8fbe0 scons: Check for known buggy version of SWIG (2.0.9)
SWIG version 2.0.9 uses fully qualified module names despite of the
importing module being in the same package as the imported
module. This has the unfortunate consequence of causing the following
error when importing m5.internal.event:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "src/python/importer.py", line 75, in load_module
    exec code in mod.__dict__
  File "src/python/m5/__init__.py", line 35, in <module>
    import internal
  File "src/python/importer.py", line 75, in load_module
    exec code in mod.__dict__
  File "src/python/m5/internal/__init__.py", line 32, in <module>
    import event
  File "src/python/importer.py", line 75, in load_module
    exec code in mod.__dict__
  File "build/X86/python/swig/event.py", line 107, in <module>
    class Event(m5.internal.serialize.Serializable):
AttributeError: 'module' object has no attribute 'internal'

When 'event' is loaded, it triggers 'serialize' to be loaded. However,
it seems like the dictionary of 'm5' isn't updated until after
__init__.py terminates, which means that 'event' never sees the
'internal' attribute on 'm5'. Older versions of SWIG didn't include
the fully qualified module name if the modules were in the same
package.
2013-03-14 16:08:55 +01:00
build_opts Regression: Add a test for x86 timing full system ruby simulation 2012-04-25 22:43:36 -05:00
configs ruby: remove the functional copy of memory in se mode 2013-03-06 21:53:57 -06:00
ext ext lib: add libfdt to enable flattened device tree support 2013-02-15 18:48:59 -05:00
src cpu: Fix state transition bug in the traffic generator 2013-03-12 18:41:29 +01:00
system ARM: Fix issue with with way MPIDR is read to include affinity levels. 2012-09-07 14:20:53 -05:00
tests regressions: x86: stats updates due to new x87 insts 2013-03-11 17:45:09 -05:00
util o3: fix tick used for renaming and issue with range selection 2013-02-15 17:40:09 -05:00
.hgignore .hgignore: added src/doxygen 2010-07-27 20:00:38 -07:00
.hgtags Added tag stable_2012_06_28 for changeset f75ee4849c40 2012-07-19 16:53:02 -07:00
COPYING copyright: Add code for finding all copyright blocks and create a COPYING file 2011-06-02 17:36:07 -07:00
LICENSE copyright: Add code for finding all copyright blocks and create a COPYING file 2011-06-02 17:36:07 -07:00
README gem5: Update the README file to be a bit less out-of-date. 2012-09-25 11:49:40 -05:00
SConstruct scons: Check for known buggy version of SWIG (2.0.9) 2013-03-14 16:08:55 +01:00

This is the gem5 simulator.

For detailed information about building the simulator and getting
started please refer to:
* The main website:     http://www.gem5.org
* Documentation wiki:   http://www.gem5.org/Documentation 
* Doxygen generated:    http://www.gem5.org/docs
* Tutorials:            http://www.gem5.org/Tutorials


Specific pages of interest are:
http://www.gem5.org/Introduction
http://www.gem5.org/Build_System
http://www.gem5.org/Dependencies
http://www.gem5.org/Running_gem5

Short version:
External tools and required versions

To build gem5, you will need the following software:
g++ version 4.3 or newer.
Python, version 2.4 - 2.7 (we don't support Python 3.X). gem5 links in the 
    Python interpreter, so you need the Python header files and shared 
    library (e.g., /usr/lib/libpython2.4.so) in addition to the interpreter
    executable. These may or may not be installed by default. For example,
    on Debian/Ubuntu, you need the "python-dev" package in addition to the
    "python" package. If you need a newer or different Python installation
     but can't or don't want to upgrade the default Python on your system,
     see http://www.gem5.org/Using_a_non-default_Python_installation
SCons, version 0.98.1 or newer. SCons is a powerful replacement for make. 
    If you don't have administrator privileges on your machine, you can use the
    "scons-local" package to install scons in your m5 directory, or install SCons
    in your home directory using the '--prefix=' option.  
SWIG, version 1.3.34 or newer
zlib, any recent version. For Debian/Ubuntu, you will need the "zlib-dev" or
    "zlib1g-dev" package to get the zlib.h header file as well as the library
    itself.
m4, the macro processor.


4. In this directory, type 'scons build/<ARCH>/gem5.opt' where ARCH is one
of ALPHA, ARM, MIPS, POWER, SPARC, or X86. This will build an optimized version
of the gem5 binary (gem5.opt) for the the specified architecture.

If you have questions, please send mail to gem5-users@gem5.org

WHAT'S INCLUDED (AND NOT)
-------------------------

The basic source release includes these subdirectories:
 - gem5:
   - configs: example simulation configuration scripts
   - ext: less-common external packages needed to build gem5
   - src: source code of the gem5 simulator
   - system: source for some optional system software for simulated systems
   - tests: regression tests
   - util: useful utility programs and files

To run full-system simulations, you will need compiled system firmware
(console and PALcode for Alpha), kernel binaries and one or more disk images. 
Please see the gem5 download page for these items at http://www.gem5.org/Download