|
Message
From: Philipp Klaus Krause<pkk@s...>
Date: Tue Sep 25 11:52:33 CEST 2007
Subject: [oc] GSC problems
I noticed the GSC SystemC to Verilog translator and want to try it. The documentation claims it's far superiour to previously existing free SystemC to Verilog translators.
However I have some troubles making it work. These are mostly related to GSC's use of Keystone.
Keystone assumes sizeof(unsigned int) == sizeof(void *), which isn't true on 64 bit systems. It assumes yacc's output files are named y_tab.h and y_tab.c, which was true a long time ago, but these days they're named y.tab.h and y.tab.c. I had to install 32 bit development libraries on my system and compile using gcc-3.4 -m32, g++-3.4 -m32 using linux32 (a tool to make programs think they're running on a 32 bit system).
I've managed to compile Keystone, but it still doesn't work:
key -I ~/systemc/objdir/include half_adder.cpp Token Buffer: 0. /usr/local/include/keystone/stubs/fstream:39: traits 1. /usr/local/include/keystone/stubs/fstream:39: > 2. /usr/local/include/keystone/stubs/fstream:40: { 3. /usr/local/include/keystone/stubs/fstream:41: public 4. /usr/local/include/keystone/stubs/fstream:41: :
current: 2 last: 4
Failed assertion: base class scope was not of type ClassScope. file: ContextManager.cpp line: 290
Thus I have some suggestions to improve usability of GSC: * Provide Keystone binaries on the download page. This would make using GSC a lot easier and probably remove the dependencies on btyacc and maybe treecc. * Make GSC give an error message if Keystone is not found (currently it just hangs on the select() call in line 65 of parse.c). * I don't think it is necessary to provide graphviz on the download page. graphviz is included in many Linux distributions, so users won't have problems finding it. Make the configure script look for graphviz in default loations, not only in /usr/local.
Philipp
|
 |