Frequently Asked Questions
The questions can be divided into several categories.
Parsing
- Is there an SDF2 grammar for language X?
- I have an ambiguity in my SDF grammar, how can I deal with it?
Rewriting
- I get core dumps when using the interpreter, but the compiled code runs smoothly.
- The ASF? interpreter uses more stack, so set your stacksize to a higher amount: limit stacksize 32M or ulimit -s 32M
- The interpreter returns the same output as a compiled specification, but the layout (whitespace) is completely different.
- The interpreter implements rewriting with layout (See ASF? ), to retain as much layout and source code comments during rewriting as possible. A compiled specification just throws away all layout and comments and introduces spaces in the normal form between every word in the output. The interpreter has a commandline option to mimick te behavior of a compiled specification, type asfe -h for details.
- The compiler produces code that is not valid C code.
- Solve all the red errors in the Meta-Environment before you compile. The compiler is not robust against errors in the specification.
Commandline interface
- I want to use the commandline interface to the Meta-Environment , where do I start?
- There is an easy introduction on this issue in the MetaEnvironmentUserManual?
- 99% of the binaries have a -h option that explains their usage
- Most tools read and write Asfix2ME? parse trees, except of course sglr and unparsePT (parsing and unparsing)
- Some tools have manual pages: man <tool>
GUI issues
- I'm using Java JDK 1.5 and my popups disappear.
- I'm editing a file and after a while the editor does not accept keyboard input anymore.
- This is a known issue which exists in Java JDK 1.5 and 1.6 and is caused by an incompatibility between the JDK and the SCIM input manager.
- Workaround: quit SCIM.
Configuration and installation
- The compilation of the Meta-Environment complains about "-ltdl" not found!
- This is a known bug in version 1.5.1: as a workaround please install libtool 1.5.2 before compiling the Meta-Environment(see http://www.gnu.org)
- Version 1.5.2 resolved this issue.
- I downloaded a Bundle from the PackageBase, but it does not seem to work!
- Please read the README file that comes with the bundle. It explains how to run the script "./collect.sh" first to really obtain the source code for all packages in the bundle.
- Note that the Meta-Environment release tarballs do not need running of "./collect.sh".
- Why is the sequence of "./configure; gmake; gmake install" not used? ...
- And why does "gmake" perform automatically an install?
- The Meta-Environment is a collection of self-contained packages. These software packages can be compiled and used separately, but together they form the Meta-Environment . The Meta-Environment bundle is created automatically by the PackageBase by combining the separate packages in a single source tree and creating a single configure script. Because there are certain dependencies between the packages and they make no assumptions about each others locations, some of them need to be compiled and installed before the others are compiled.
- Do I need to be root to install the Meta-Environment ?
- No, the exact location where you want the system to be installed can be given via "./configure --prefix=<path>". The Meta-Environment will then be installed in <path>/bin, <path>/include, <path>/lib, <path>/man, <path>/share, <path>/classes and <path>/libexec.
- What are the requirements for the Meta-Environment ?
- What other software is needed to compile the Meta-Environment ?
- What platforms are supported by the Meta-Environment ?
- It is supported on the following platforms:
- Apart from the directly supported platforms, it was compiled and run successfully on the following platforms:
- Irix/MIPS
- Windows2000+CygWin/i386
- WindowsXP+CygWin/i386 (The 1.5.3 release of the Meta-Environment does not seem to work, or has heavy problems on this combination)
- WindowsNT4/i386 (not completely)
- MacOSX ( See http://www.phil.uu.nl/sysdox/helpdesk/howto/asf+sdf.html ), however we have several reports of failure on this platform for the 1.5.x releases. We are working on solutions in the 1.6.x versions.
- Linux/sparc
- In CygWin, I have problems with Java, what do I do?
- In CygWin, how do I enlarge the stacklimit? 'ulimit -s' does not work.
- Before compiling, you have to configure the Meta-Environment with the following option to get a stacksize of about 32 MB: --with-cflags='-Wl,--stack,0x2000000 -DNDEBUG'
- Compilation failed because some Java code fails to compile
- Please take care to have the right Java compiler in your path (See InstallationRequirements)
- Note that the 1.5.1 release does not compiler with a Java 1.5 compiler. The 1.5.2 release fixes this problem.
- When compiling Java sources under Cygwin I receive class not found errors.
- Windows uses other path separators then *nix systems do; therefore, you need wrapperscripts for java and javac that convert paths between the two systems. These wrapperscripts must be found earlier in your path then the java or javac executables.
- Before using the java and javac scripts you have to change the JAVAC_EXEC variable to point to your installed java{,c} executable.
- java: Cygwin Java wrapper script
- javac: Cygwin javac wrapper script
- How to I link the ATerm library statically to my C program?