8 LuaGRAPH is a binding to the graphviz library.
10 LuaGRAPH requires the graphviz library version 2.26 or later, which
11 can be downloaded from
13 http://www.graphviz.org/
16 You must have Lua version 5.1, 5.2 or 5.3. Lua can be downloaded
18 http://www.tecgraf.puc-rio.br/lua/
24 Documentation of LuaGRAPH comes with the LuaGRAPH distribution. I recommend also to
25 read the graphviz documentation, which can be found here:
27 http://www.graphviz.org/Documentation.php
33 See the license agreement in the file LICENSE.
37 LuaGRAPH can be downloaded from github at
39 https://github.com/hleuwer/luagraph
41 or install with luarocks. See below under "Installation".
46 Before building LuaGRAPH you have to adopt the config file by
47 adjusting various constants to the installed Lua and Graphviz version.
51 Newest version is LuaGRAPH 2.0 now supports the `cgraph´ library and all
52 Lua versions from Lua 5.1 to Lua 5.3. Lua 5.0 is no longer supported.
53 It has been tested on MacOS Sierra version 10.12.13, Linux Debian and
54 Windows 10 running as guest in a Virtual Box virtual machine under MacOS.
56 Under MacOS and Linux all regression tests pass without any error. Under
57 Windows a couple of functions do not work. See below for explanation.
59 Since it runs perfectly und MacOS and Linux I decided to publish LuaGRAPH 2.0.
61 The library itself runs also under Windows, but the program crashes with
62 an access violation when it comes to more deep interworking with the Windows
63 kernel during reading graphs from files, loading of plugins (both preloaded
64 and on-demand loading). This may be caused by the fact that the binary
65 version of Graphviz 2.38 was compiled (VC 2010?) with a different version
66 than the Luagraph library (VC2015) and the Lua interpreter (VC2008 or MingGW),
67 which leads to loading of multiple version of the Microsoft C runtime
68 libraries. I didn't spend too much effort to make Graphviz compile on
69 my platform using MingGW, MSYS2 or VC2015.
71 Any help on this issue is welcome.
78 Simply type the following:
80 $ sudo luarocks GRAPHVIZ_DIR=/opt/local install luagraph
82 You may have to change the value for the GRAPHVIZ_DIR variable to ensure
83 that luarocks finds your GRAPHVIZ installation. On MacOS it is typically
84 installed in /opt/local.
88 In order to build LuaGRAPH on a Linux, Unix or Cygwin/Mingw based
91 1. Make sure you have Lua 5.1 to 5.3.
92 The file test.lua in the test subdirectory uses lualogging which
93 can be installed via Luarocks at http://www.luarocks.org.
95 2. With graphviz version 2.12 you might have to use the `ltdl' library
96 that comes with graphviz in order to have the rendering plugins to
97 work properly. Version 2.40 is currently the last graphviz version
100 3. LuaGRAPH comes with a makefile and a simple config file to adopt
101 the make process to your target system.
103 4. Adopt build configuration to your platform by editing the file
104 config according to you needs.
106 5. Compile the package
111 If make succeeds you get:
113 * a Lua extension library "graph.so.x.0" in the src sub-directory.
114 * a copy "core.so" of the same Lua extension library in ./graph
116 6. Type "make install" as user root in order to install all relevant
117 files in standard places. The directory /usr/local is the default
122 * Environment Variables
123 ---------------------
128 * Comments and bug reports
129 ------------------------
131 Please send your comments and bug reports to the Lua mailing list.
133 December 2006 (January 2017)