missing NULL terminator in set_config_x
[geda-gaf.git] / docs / wiki / geda-gaf_building_git_version.html
blobf940fb8f91009ff4b8706064256d18142d27989e
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html>
4 <head>
5 <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
6 <link rel="stylesheet" media="screen" type="text/css" href="./design.css" />
7 <link rel="stylesheet" media="print" type="text/css" href="./print.css" />
9 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10 </head>
11 <body>
13 <h1 class="sectionedit1" id="building_the_geda_gaf_git_repository_version">Building the gEDA/gaf git repository version</h1>
14 <div class="level1">
16 </div>
17 <!-- EDIT1 SECTION "Building the gEDA/gaf git repository version" [1-60] -->
18 <h2 class="sectionedit2" id="general_instructions">General Instructions</h2>
19 <div class="level2">
21 <p>
22 To build the git repository version of gEDA/gaf, follow these instructions:
23 </p>
24 <ul>
25 <li class="level1 node"><div class="li"> Download and install all the following dependencies. You will probably want to use your distributions package management system (such as apt-get or yum) to install the dependencies.</div>
26 <ul>
27 <li class="level2"><div class="li"> A C/C++ compiler and standard library (<a href="http://gcc.gnu.org/" class="urlextern" title="http://gcc.gnu.org/" rel="nofollow"> GCC </a> and <a href="http://www.gnu.org/software/libc/" class="urlextern" title="http://www.gnu.org/software/libc/" rel="nofollow"> GNU Libc </a> are recommended)</div>
28 </li>
29 <li class="level2"><div class="li"> <a href="http://flex.sourceforge.net/" class="urlextern" title="http://flex.sourceforge.net/" rel="nofollow"> flex </a> current</div>
30 </li>
31 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/gawk/" class="urlextern" title="http://www.gnu.org/software/gawk/" rel="nofollow"> GNU awk </a> current</div>
32 </li>
33 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/automake" class="urlextern" title="http://www.gnu.org/software/automake" rel="nofollow"> automake </a> 1.11.0 or later</div>
34 </li>
35 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/autoconf/" class="urlextern" title="http://www.gnu.org/software/autoconf/" rel="nofollow"> autoconf </a> 2.60 or later</div>
36 </li>
37 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/libtool/" class="urlextern" title="http://www.gnu.org/software/libtool/" rel="nofollow"> libtool </a> current</div>
38 </li>
39 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/texinfo/" class="urlextern" title="http://www.gnu.org/software/texinfo/" rel="nofollow"> texinfo </a> current</div>
40 </li>
41 <li class="level2"><div class="li"> <a href="http://pkgconfig.freedesktop.org/wiki" class="urlextern" title="http://pkgconfig.freedesktop.org/wiki" rel="nofollow"> pkg-config </a> current</div>
42 </li>
43 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/gettext/" class="urlextern" title="http://www.gnu.org/software/gettext/" rel="nofollow"> gettext </a> 0.18 or later</div>
44 </li>
45 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/guile%22" class="urlextern" title="http://www.gnu.org/software/guile&quot;" rel="nofollow"> guile </a> 2.0 or 2.2 (1.x is no longer supported)</div>
46 </li>
47 <li class="level2"><div class="li"> <a href="http://www.gtk.org/" class="urlextern" title="http://www.gtk.org/" rel="nofollow"> gtk+ </a> 2.18.0 or later</div>
48 </li>
49 <li class="level2"><div class="li"> <a href="http://www.gnu.org/software/groff/groff.html" class="urlextern" title="http://www.gnu.org/software/groff/groff.html" rel="nofollow"> groff </a> current</div>
50 </li>
51 <li class="level2"><div class="li"> <a href="http://git-scm.com" class="urlextern" title="http://git-scm.com" rel="nofollow"> git </a> 1.6.x or later</div>
52 </li>
53 <li class="level2"><div class="li"> <a href="https://www.python.org/downloads/" class="urlextern" title="https://www.python.org/downloads/" rel="nofollow">CPython</a> 2.7</div>
54 </li>
55 <li class="level2"><div class="li"> <a href="http://oss.sgi.com/projects/fam/" class="urlextern" title="http://oss.sgi.com/projects/fam/" rel="nofollow">FAM</a> or <a href="https://people.gnome.org/~veillard/gamin/" class="urlextern" title="https://people.gnome.org/~veillard/gamin/" rel="nofollow">Gamin</a> (Gamin is recommended)</div>
56 </li>
57 <li class="level2"><div class="li"> <a href="http://freedesktop.org/Software/shared-mime-info" class="urlextern" title="http://freedesktop.org/Software/shared-mime-info" rel="nofollow"> freedesktop.org MIME info database </a> current</div>
58 </li>
59 <li class="level2"><div class="li"> <a href="http://www.freedesktop.org/software/desktop-file-utils/releases" class="urlextern" title="http://www.freedesktop.org/software/desktop-file-utils/releases" rel="nofollow"> freedesktop.org utilities for manipulating .desktop files </a> current</div>
60 </li>
61 </ul>
62 </li>
63 </ul>
64 <ul>
65 <li class="level1"><div class="li"> It is pretty important to have all of the above programs (especially automake, autoconf, libtool, gtk, and guile) installed in the same prefix (like /usr or /usr/local). If you do not have them all installed in the same prefix, then building and installing gEDA/gaf is much harder.</div>
66 </li>
67 </ul>
68 <ul>
69 <li class="level1"><div class="li"> Clone the source from the official git repository. For information on how to do this, read the <a href="geda-scm.html" class="wikilink1" title="geda-scm.html"> gEDA SCM page </a></div>
70 </li>
71 </ul>
72 <ul>
73 <li class="level1"><div class="li"> Build the software by executing the following commands inside of the newly cloned git repository:<pre class="code">$ ./autogen.sh
74 $ ./configure --prefix=$HOME/geda --enable-silent-rules
75 $ make
76 $ make install</pre>
77 </div>
78 </li>
79 <li class="level1"><div class="li"> If the above commands execute without <strong>any</strong> error messages, then you have successfully built and installed gEDA/gaf. If you encounter any errors, be sure to read the README and INSTALL files contained within the tarball.</div>
80 </li>
81 </ul>
82 <ul>
83 <li class="level1"><div class="li"> You can now run the various programs in the gEDA suite. Please read the toplevel README file which describes what is available.</div>
84 </li>
85 </ul>
86 <ul>
87 <li class="level1"><div class="li"> gschem is the schematic capture program and can be run by executing: <code>PATH_WHERE_gEDA_GAF_IS_INSTALLED/bin/gschem</code></div>
88 </li>
89 </ul>
90 <ul>
91 <li class="level1"><div class="li"> It is recommended that you add <code>PATH_WHERE_gEDA_GAF_IS_INSTALLED/bin</code> to your PATH environment variable (typically done by modifying one of the following files: <code>$HOME/.bashrc</code>, <code>$HOME/.bash_profile</code>, or <code>$HOME/.profile</code>).</div>
92 </li>
93 </ul>
94 <ul>
95 <li class="level1"><div class="li"> It is highly recommended that you read the gEDA documentation at this point. You can access the gEDA documentation by running gschem and select Help/gEDA Documentation… from the top menu.</div>
96 </li>
97 </ul>
98 <ul>
99 <li class="level1"><div class="li"> If you want to get gEDA/gaf repository commit log e-mail messages, please subscribe to the geda-cvs mailing list. Please see the <a href="geda-mailinglists.html" class="wikilink1" title="geda-mailinglists.html"> mailing lists page </a> for info on how to do this.</div>
100 </li>
101 </ul>
102 <ul>
103 <li class="level1"><div class="li"> For build problems, please be sure to read the <a href="geda-mailinglists.html" class="wikilink1" title="geda-mailinglists.html"> mailing list archives </a> or <a href="http://www.geda-project.org/search.html" class="urlextern" title="http://www.geda-project.org/search.html" rel="nofollow"> search </a> this site. Also look at the <a href="start.html" class="wikilink1" title="start.html"> gEDA wiki </a> for more hints.</div>
104 </li>
105 </ul>
107 </div>
108 <!-- EDIT2 SECTION "General Instructions" [61-3748] -->
109 <h2 class="sectionedit3" id="distro-specific_information">Distro-specific information</h2>
110 <div class="level2">
112 </div>
113 <!-- EDIT3 SECTION "Distro-specific information" [3749-3789] -->
114 <h3 class="sectionedit4" id="debian-based">Debian-based</h3>
115 <div class="level3">
118 This is tested on <a href="http://crunchbanglinux.org/" class="urlextern" title="http://crunchbanglinux.org/" rel="nofollow">Crunchbang Linux</a> but should work on Debian Wheezy and possibly Ubuntu also.
119 </p>
120 <ol>
121 <li class="level1"><div class="li"> Install the build dependencies for the packaged version of gEDA:<pre class="code">$ sudo apt-get build-dep geda</pre>
122 </div>
123 </li>
124 <li class="level1"><div class="li"> Install the packages that don&#039;t get pulled in by the above command:<pre class="code">$ sudo apt-get install texinfo
125 $ sudo apt-get install autopoint
126 $ sudo apt-get install libtool</pre>
127 </div>
128 </li>
129 <li class="level1"><div class="li"> If you want to generate doxygen output, install it and the other prerequisites:<pre class="code">$ sudo apt-get install doxygen
130 $ sudo apt-get install imagemagick
131 $ sudo apt-get install graphviz</pre>
132 </div>
133 </li>
134 <li class="level1"><div class="li"> Clone the source from the official git repository. For information on how to do this, read the <a href="geda-scm.html" class="wikilink1" title="geda-scm.html"> gEDA SCM topic </a>.</div>
135 </li>
136 <li class="level1"><div class="li"> From inside the newly cloned repository, build gEDA/gaf:<pre class="code">$ ./autogen.sh
137 $ ./configure --prefix=$HOME/geda --enable-silent-rules [--enable-doxygen]
138 $ make
139 $ make install</pre>
140 </div>
141 </li>
142 </ol>
144 </div>
145 <!-- EDIT4 SECTION "Debian-based" [3790-4752] -->
146 <h3 class="sectionedit5" id="macports">MacPorts</h3>
147 <div class="level3">
150 <a href="http://www.macports.org/" class="urlextern" title="http://www.macports.org/" rel="nofollow">MacPorts</a> is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading open-source software on the Mac <abbr title="Operating System">OS</abbr> X operating system. MacPorts has a packaged installation of gEDA/gaf but occasionally one needs a more up-to-date version (such as that from git). The easiest way to build from git HEAD on MacPorts is to install the packaged version (at time of writing, 1.6.2) as a way of bringing most of the dependencies into the MacPorts tree.
151 </p>
152 <ol>
153 <li class="level1"><div class="li"> <a href="http://www.macports.org/install.php" class="urlextern" title="http://www.macports.org/install.php" rel="nofollow">Install MacPorts</a>.</div>
154 </li>
155 <li class="level1"><div class="li"> Install the MacPorts-packaged version of gEDA/gaf. As a happy side-effect, this brings in most of the build prerequisites. Also install autoconf and automake:<pre class="code">$ sudo port install geda-gaf
156 $ sudo port install autoconf
157 $ sudo port install automake</pre>
158 </div>
159 </li>
160 <li class="level1"><div class="li"> If you want to generate doxygen output, install doxygen:<pre class="code">$ sudo port install doxygen</pre>
161 </div>
162 </li>
163 <li class="level1"><div class="li"> Clone the source from the official git repository. For information on how to do this, read the <a href="geda-scm.html" class="wikilink1" title="geda-scm.html"> gEDA SCM topic </a>.</div>
164 </li>
165 <li class="level1"><div class="li"> From inside the newly cloned repository, build gEDA/gaf:<pre class="code">$ ./autogen.sh
166 $ ./configure --prefix=$HOME/geda --disable-update-xdg-database --enable-silent-rules [--enable-doxygen]
167 $ make
168 $ make install</pre>
169 </div>
170 </li>
171 <li class="level1"><div class="li"> If you are running a recent release of <abbr title="Operating System">OS</abbr> X, X server is not included by default so you might need to install <a href="http://xquartz.macosforge.org/landing/" class="urlextern" title="http://xquartz.macosforge.org/landing/" rel="nofollow">XQuartz</a></div>
172 </li>
173 <li class="level1"><div class="li"> To run the software, you need to set an environment variable to allow Guile to load its shared libraries:<pre class="code">$ export LTDL_LIBRARY_PATH=/opt/local/lib
174 $ gschem</pre>
175 </div>
176 </li>
177 </ol>
179 </div>
180 <!-- EDIT5 SECTION "MacPorts" [4753-] --></body>
181 </html>