<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Graph::Easy - Manual - Errors</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="MSSmartTagsPreventParsing" content="TRUE">
<meta http-equiv="imagetoolbar" content="no">
<link rel="stylesheet" type="text/css" href="../base.css">
<link rel="stylesheet" type="text/css" href="teamwork.css">
<link rel="Start" href="index.html">
<link href="http://bloodgate.com/mail.html" rev="made">
<!-- compliance patch for microsoft browsers -->
<!--[if lt IE 7]><script src="http://bloodgate.com/ie7/ie7-standard-p.js" type="text/javascript"></script><![endif]-->
</head>
<body bgcolor=white text=black>
<a name="top"></a>
<div class="menu">
<a class="menubck" href="index.html" title="Back to the manual index">Index</a>
<p style="height: 0.2em"> </p>
<a class="menuext" href="overview.html" title="How everything fits together">Overview</a>
<a class="menuext" href="layouter.html" title="How the layouter works">Layouter</a>
<a class="menuext" href="hinting.html" title="Generating specific layouts">Hinting</a>
<a class="menuext" href="output.html" title="Output formats and their limitations">Output</a>
<a class="menuext" href="syntax.html" title="Syntax rules for the text format">Syntax</a>
<a class="menuext" href="attributes.html" title="All possible attributes for graphs, nodes and edges">Attributes</a>
<a class="menuext" href="faq.html" title="Frequently Asked Questions and their answers">F.A.Q.</a>
<a class="menucin" href="errors.html" title="Error codes and explanations">Errors</a>
<a class="menuind" href="#1" title="Cannot execute graphcnv">Error #1</a>
<a class="menuind" href="#2" title="Parser error">Error #2</a>
<a class="menuind" href="#3" title="Invalid output format">Error #3</a>
<a class="menuind" href="#4" title="Cannot write file">Error #4</a>
<a class="menuind" href="#5" title="Cannot execute dot">Error #5</a>
<a class="menuind" href="#6" title="Timeout in layout">Error #6</a>
<a class="menuext" href="tutorial.html" title="Tutorial for often used graph types and designs">Tutorial</a>
</div>
<div class="right">
<h1>Graph::Easy - Manual</h1>
<h2>Errors</h2>
<div class="text">
<!-- ########################### head graph ############################### -->
<table class="graph" cellpadding=0 cellspacing=0>
<tr>
<td colspan=4 rowspan=4 class='node' style="background: #ffff00">Teamwork</td>
<td rowspan=4 class="edge ve"></td>
<td colspan=2 rowspan=2 class="edge lh" style="border-bottom: solid 2px black;">is the key to</td>
<td rowspan=2 class="edge" style=" color: black;"><span class="sh">></span></td>
<td colspan=4 rowspan=4 class='node' style="background: #ff0000">Victory</td>
</tr>
<tr></tr>
<tr>
<td colspan=2 rowspan=2 class="edge eb"> </td>
<td rowspan=2 class="edge eb"> </td>
</tr>
</table>
<!-- ########################### head graph ############################### -->
<p>
This chapter explains possible error messages, especially these from the
Mediawiki integration.
</p>
</div>
<a name="toc">
<h2>Table of Contents</h2>
</a>
<div class="text">
<ul>
<li><a href="#1">Error #1 - Cannot execute graphcnv</a></li>
<li><a href="#2">Error #2 - Parser error</a></li>
<li><a href="#3">Error #3 - Invalid output format</a></li>
<li><a href="#4">Error #4 - Cannot write file</a></li>
<li><a href="#5">Error #5 - Cannot execute dot</a></li>
<li><a href="#6">Error #6 - Timeout in layout</a></li>
</ul>
</div>
<a name="1">
<h2>Error #1 - Cannot execute graphcnv</h2>
</a>
<div class="text">
<p>
The program <code>graphcnv</code> couldn't be executed, either because it was
not found, or does not have execution permission. Check first that you can
run it manually from your MediaWiki directory (e.g.
<code>/srv/www/htdocs/wiki/</code>):
</p>
<pre>
perl graph/graphcnv '[ Bonn ] -> [ Berlin ]' 'utf-8' 'ascii'
</pre>
<p>
This should result in similiar output like this:
</p>
<pre>
<pre>
+------+ +--------+
| Bonn | --> | Berlin |
+------+ +--------+
<pre>
</pre>
<p>
If you get an error message, check the permissions of <code>graphcnv</code>
and make sure it is executable by the user your webserver runs under.
</p>
</div>
<a name="2">
<h2>Error #2 - Parser error</h2>
</a>
<div class="text">
<p>
The graph code you did write is invalid, or the parser did not understand it.
Usually this means you made a typo in an attribute name, forgot a closing <code>]</code>
or similiar mistakes.
<br>
If the code you wrote is correct, but the parser still does not parse it properly,
please file a <a href="http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Graph-Easy">bugreport</a>.
</p>
<p>
If you are unsure what attributes you can use and what their format is,
have a look at the <a href="attributes.html">attribute definitions</a>.
</p>
</div>
<a name="3">
<h2>Error #3 - Invalid output format</h2>
</a>
<div class="text">
<p>
<code>graphcnv</code> understands the following output formats:
</p>
<ul>
<li>graphviz</li>
<li>svg</li>
<li>html</li>
<li>ascii</li>
<li>boxart</li>
<li>debug</li>
</ul>
<p>
To what exact format the <code>graphviz</code> format is rendered is
set in the config file <code>graph.cfg</code>. The user cannot
change this from inside the graph code. This means that all
files generated via graphviz are in the same file format, f.i. <code>png</code>.
</p>
</div>
<a name="4">
<h2>Error #4 - Cannot write file</h2>
</a>
<div class="text">
<p>
<code>graphcnv</code> could not write the file. Please make sure
that the output directory is properly configured in <cod>graph.cfg</code>,
exists and is writable by your web server process. You might need
to set the user and group of this directory to whatever your
web server runs under.
</p>
</div>
<a name="5">
<h2>Error #5 - Cannot execute dot</h2>
</a>
<div class="text">
<p>
To create png graphics, the <code>graphcnv</code> program uses <code>dot</code>
or any other graphviz program like <code>neato</code> or <code>circo</code>.
Which program is uses exactly is defined in the config file <code>graph.cfg</code>.
<br>
You need to install the graphviz package, and the program to be used must be
in your path, like <code>/usr/bin/dot</code> or <code>/usr/local/bin/dot</code>.
</p>
</div>
<a name="6">
<h2>Error #6 - Timeout in layouter</h2>
</a>
<div class="text">
<p>
The layouter in Graph::Easy sometimes cannot complete the layout. To prevent it getting
stuck in an endless loop, there is a hard time limit of 5 seconds, after that the
layout stage will be aborted.
<br>
If the server is under heavy load, the conversion of the graph might be aborted
even though the layouter would have been able to complete the layout. In this
case, you might try again.
<br>
If the layout still does not finish, try as output format <code>graphviz</code>.
In addition,
please file a <a href="http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Graph-Easy">bugreport</a>
so that I can improve my code.
</p>
<p>
Graph::Easy can handle small to medium sized graphs, but on more complicated graphs
it has problems like missing edges, nodes or that the layout takes quite a bit of
time.
</p>
</div>
<div> </div>
<div class="text">
<h3>Contact and Bugreports</h3>
<p>
If you have questions, feel free to send me an <a href="mailto:nospam-abuse@bloodgate.com">email</a>
<small>(<a href="/tels.asc">Gnupg key</a>)</small>.
<b>Bugreports</b> should go to <a href="http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Graph-Easy">rt.cpan.org</a>.
</p>
</div>
<div class="footer">
Page created <span class="date">2005-12-10</span> by <a href="http://bloodgate.com/mail.html">Tels</a>.
Last update: <span class="date">2006-08-12</span>
</div>
</div> <!-- end of right cell -->
</body>
</html>