<!-- Creator : groff version 1.21 --> <!-- CreationDate: Fri Nov 23 21:34:33 2012 --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta name="generator" content="groff -Thtml, see www.gnu.org"> <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> <meta name="Content-Style" content="text/css"> <style type="text/css"> p { margin-top: 0; margin-bottom: 0; vertical-align: top } pre { margin-top: 0; margin-bottom: 0; vertical-align: top } table { margin-top: 0; margin-bottom: 0; vertical-align: top } h1 { text-align: center } </style> <title>gsch2pcb</title> </head> <body> <h1 align="center">gsch2pcb</h1> <a href="#NAME">NAME</a><br> <a href="#SYNOPSIS">SYNOPSIS</a><br> <a href="#DESCRIPTION">DESCRIPTION</a><br> <a href="#OPTIONS">OPTIONS</a><br> <a href="#PROJECT FILES">PROJECT FILES</a><br> <a href="#ENVIRONMENT">ENVIRONMENT</a><br> <a href="#AUTHORS">AUTHORS</a><br> <a href="#COPYRIGHT">COPYRIGHT</a><br> <a href="#SEE ALSO">SEE ALSO</a><br> <hr> <h2>NAME <a name="NAME"></a> </h2> <p style="margin-left:11%; margin-top: 1em">gsch2pcb - Update PCB layouts from gEDA/gaf schematics</p> <h2>SYNOPSIS <a name="SYNOPSIS"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>gsch2pcb</b> [<i>OPTION</i> ...] {<i>PROJECT</i> | <i>FILE</i> ...}</p> <h2>DESCRIPTION <a name="DESCRIPTION"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>gsch2pcb</b> is a frontend to <b>gnetlist</b>(1) which aids in creating and updating <b>pcb</b>(1) printed circuit board layouts based on a set of electronic schematics created with <b>gschem</b>(1).</p> <p style="margin-left:11%; margin-top: 1em">Instead of specifying all options and input gEDA schematic <i>FILE</i>s on the command line, <b>gsch2pcb</b> can use a <i>PROJECT</i> file instead.</p> <p style="margin-left:11%; margin-top: 1em"><b>gsch2pcb</b> first runs <b>gnetlist</b>(1) with the ‘PCB’ backend to create a ‘<name>.net’ file containing a <b>pcb</b>(1) formatted netlist for the design.</p> <p style="margin-left:11%; margin-top: 1em">The second step is to run <b>gnetlist</b>(1) again with the ‘gsch2pcb’ backend to find any <b>M4</b>(1) elements required by the schematics. Any missing elements are found by searching a set of file element directories. If no ‘<name>.pcb’ file exists for the design yet, it is created with the required elements; otherwise, any new elements are output to a ‘<name>.new.pcb’ file.</p> <p style="margin-left:11%; margin-top: 1em">If a ‘<name>.pcb’ file exists, it is searched for elements with a non-empty element name with no matching schematic symbol. These elements are removed from the ‘<name>.pcb’ file, with a backup in a ‘<name>.pcb.bak’ file.</p> <p style="margin-left:11%; margin-top: 1em">Finally, <b>gnetlist</b>(1) is run a third time with the ‘pcbpins’ backend to create a ‘<name>.cmd’ file. This can be loaded into <b>pcb</b>(1) to rename all pin names in the PCB layout to match the schematic.</p> <h2>OPTIONS <a name="OPTIONS"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>-o</b>, <b>--output-name</b>=<i>BASENAME</i></p> <p style="margin-left:23%;">Use output filenames ‘<i>BASENAME</i>.net’, ‘<i>BASENAME</i>.pcb’, and ‘<i>BASENAME</i>.new.pcb’. By default, the basename of the first schematic file in the list of input files is used.</p> <p style="margin-left:11%;"><b>-d</b>, <b>--elements-dir</b>=<i>DIRECTORY</i></p> <p style="margin-left:23%;">Add <i>DIRECTORY</i> to the list of directories to search for PCB file elements. By default, the following directories are searched if they exist: ‘./packages’, ‘/usr/local/share/pcb/newlib’, ‘/usr/share/pcb/newlib’, ‘/usr/local/lib/pcb_lib’, ‘/usr/lib/pcb_lib’, ‘/usr/local/pcb_lib’.</p> <p style="margin-left:11%;"><b>-f</b>, <b>--use-files</b></p> <p style="margin-left:23%;">Force use of file elements in preference to elements generated with <b>M4</b>(1).</p> <p style="margin-left:11%;"><b>-s</b>, <b>--skip-m4</b></p> <p style="margin-left:23%;">Disable element generation using <b>M4</b>(1) entirely.</p> <p style="margin-left:11%;"><b>--m4-file</b> <i>FILE</i></p> <p style="margin-left:23%;">Use the <b>M4</b>(1) file <i>FILE</i> in addition to the default M4 files ‘./pcb.inc’ and ‘~/.pcb/pcb.inc’.</p> <p style="margin-left:11%;"><b>--m4-pcbdir</b> <i>DIRECTORY</i></p> <p style="margin-left:23%;">Set <i>DIRECTORY</i> as the directory where <b>gsch2pcb</b> should look for <b>M4</b>(1) files installed by <b>pcb</b>(1).</p> <p style="margin-left:11%;"><b>-r</b>, <b>--remove-unfound</b></p> <p style="margin-left:23%;">Don’t include references to unfound elements in the generated ‘.pcb’ files. Use if you want <b>pcb</b>(1) to be able to load the (incomplete) ‘.pcb’ file. This is enabled by default.</p> <p style="margin-left:11%;"><b>-k</b>, <b>--keep-unfound</b></p> <p style="margin-left:23%;">Keep include references to unfound elements in the generated ‘.pcb’ files. Use if you want to hand edit or otherwise preprocess the generated ‘.pcb’ file before running <b>pcb</b>(1).</p> <p style="margin-left:11%;"><b>-p</b>, <b>--preserve</b></p> <p style="margin-left:23%;">Preserve elements in PCB files which are not found in the schematics. Since elements with an empty element name (schematic "refdes") are never deleted, this option is rarely useful.</p> <p style="margin-left:11%;"><b>--gnetlist</b> <i>BACKEND</i></p> <p style="margin-left:23%;">In addition to the default backends, run <b>gnetlist</b>(1) with ‘−g <i>BACKEND</i>’, with output to ‘<name>.<i>BACKEND</i>’.</p> <p style="margin-left:11%;"><b>--gnetlist-arg</b> <i>ARG</i></p> <p style="margin-left:23%;">Pass <i>ARG</i> as an additional argument to <b>gnetlist</b>(1).</p> <p style="margin-left:11%;"><b>--empty-footprint</b> <i>NAME</i></p> <p style="margin-left:23%;">If <i>NAME</i> is not ‘none’, <b>gsch2pcb</b> will not add elements for components with that name to the PCB file. Note that if the omitted components have net connections, they will still appear in the netlist and <b>pcb</b>(1) will warn that they are missing.</p> <p style="margin-left:11%;"><b>--fix-elements</b></p> <p style="margin-left:23%;">If a schematic component’s ‘footprint’ attribute is not equal to the ‘Description’ of the corresponding PCB element, update the ‘Description’ instead of replacing the element.</p> <p style="margin-left:11%;"><b>-q</b>, <b>--quiet</b></p> <p style="margin-left:23%;">Don’t output information on steps to take after running <b>gsch2pcb</b>.</p> <p style="margin-left:11%;"><b>-v</b>, <b>--verbose</b></p> <p style="margin-left:23%;">Output extra debugging information. This option can be specified twice (‘−v −v’) to obtain additional debugging for file elements.</p> <p style="margin-left:11%;"><b>-h</b>, <b>--help</b></p> <p style="margin-left:23%;">Print a help message.</p> <p style="margin-left:11%;"><b>-V</b>, <b>--version</b></p> <p style="margin-left:23%;">Print <b>gsch2pcb</b> version information.</p> <h2>PROJECT FILES <a name="PROJECT FILES"></a> </h2> <p style="margin-left:11%; margin-top: 1em">A <b>gsch2pcb</b> project file is a file (not ending in ‘.sch’) containing a list of schematics to process and some options. Any long-form command line option can appear in the project file with the leading ‘−−’ removed, with the exception of ‘−−gnetlist-arg’, ‘−−fix-elements’, ‘−−verbose’, and ‘−−version’. Schematics should be listed on a line beginning with ‘schematics’.</p> <p style="margin-left:11%; margin-top: 1em">An example project file might look like:</p> <table width="100%" border="0" rules="none" frame="void" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="8%"></td> <td width="7%"></td> <td width="85%"> <p>schematics partA.sch partB.sch</p></td></tr> <tr valign="top" align="left"> <td width="8%"></td> <td width="7%"></td> <td width="85%"> <p>output-name design</p></td></tr> </table> <h2>ENVIRONMENT <a name="ENVIRONMENT"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>GNETLIST</b></p> <p style="margin-left:23%;">specifies the <b>gnetlist</b>(1) program to run. The default is ‘gnetlist’.</p> <h2>AUTHORS <a name="AUTHORS"></a> </h2> <p style="margin-left:11%; margin-top: 1em">See the ‘AUTHORS’ file included with this program.</p> <h2>COPYRIGHT <a name="COPYRIGHT"></a> </h2> <p style="margin-left:11%; margin-top: 1em">Copyright © 1999-2011 gEDA Contributors. License GPLv2+: GNU GPL <br> version 2 or later. Please see the ‘COPYING’ file included with this <br> program for full details.</p> <p style="margin-left:11%; margin-top: 1em">This is free software: you are free to change and redistribute it. <br> There is NO WARRANTY, to the extent permitted by law.</p> <h2>SEE ALSO <a name="SEE ALSO"></a> </h2> <p style="margin-left:11%; margin-top: 1em"><b>gschem</b>(1), <b>gnetlist</b>(1), <b>pcb</b>(1)</p> <hr> </body> </html>