GithubHelp home page GithubHelp logo

00mjk / lepton-eda Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lepton-eda/lepton-eda

0.0 0.0 0.0 48.61 MB

GPL Electronic Design Automation

Home Page: https://lepton-eda.github.io

License: GNU General Public License v2.0

Shell 3.56% C 64.46% C++ 0.01% VHDL 0.20% Scheme 25.43% Makefile 1.63% Batchfile 0.01% AMPL 0.01% HTML 0.69% M4 1.41% Lex 0.33% Perl 1.04% Verilog 0.03% Roff 1.13% SourcePawn 0.03% Pascal 0.03%

lepton-eda's Introduction

Lepton Electronic Design Automation

Join the chat at https://gitter.im/Lepton-EDA

Introduction

Lepton EDA is a suite of free software tools for designing electronics. It provides schematic capture, netlisting into over 30 netlist formats, and many other features. It was forked from the gEDA/gaf suite in late 2016 by most of its active developers at that time.

The GPL Electronic Design Automation (gEDA) project has produced and continues working on a full GPL'd suite and toolkit of Electronic Design Automation tools. These tools are used for electrical circuit design, schematic capture, simulation, prototyping, and production. Currently, the gEDA project offers a mature suite of free software applications for electronics design, including schematic capture, attribute management, bill of materials (BOM) generation, netlisting, analog and digital simulation, and printed circuit board (PCB) layout.

The gEDA project was started because of the lack of free EDA tools for POSIX systems with the primary purpose of advancing the state of free hardware or open source hardware. The suite is mainly being developed on the GNU/Linux platform with some development effort going into making sure the tools run on other platforms as well.

Compatibility with geda-gaf

Lepton EDA is backward compatible with its predecessor geda-gaf and supports the same file format for symbols and schematics. We are planning to support it in future since there are lots of symbols and schematics created using it. We cannot promise you to support any change in geda-gaf in future, though. It's up to you, our users, to point out what feature you would like to have in Lepton.

Tools in the Lepton EDA suite

The major components of the Lepton suite are:

  • liblepton

    • A library of functions for manipulating Lepton schematics and symbols and rendering primitives.
  • libleptongui

    • A library of GUI functions.
  • lepton-schematic

    • A schematic editor.
  • lepton-attrib

    • A spreadsheet-like program for bulk editing of component attributes.
  • lepton-netlist

    • A highly-flexible, hierarchy-aware utility which parses schematics to generate a number of outputs, including netlists for a wide variety of PCB layout tools. It can also generate bills of materials and DRC reports for your schematics.
  • lepton-sch2pcb

  • lepton-symcheck

    • A utility for checking for common errors in schematic symbol files.
  • lepton-cli

    • A utility for interactive and batch mode working with Lepton EDA Scheme API, exporting schematics into various formats, and configuring all the programs of the suite.

Installation

Dependencies

In order to compile Lepton EDA from the distributed source archives, you must have the following tools and libraries installed:

The following tools and libraries are highly recommended:

The following tools and libraries are optional:

  • libstroke, a stroke and gesture recognition library. If this is available, lepton-schematic will support mouse gesture recognition. http://www.etla.net/libstroke/

  • The doxygen API documentation tool. This is required for building the Lepton developer API documentation, not for the regular user documentation. http://www.doxygen.nl

  • 'Inkscape' or 'ImageMagick' for svg to png or pdf conversion This is required for building the Lepton developer API documentation, not for the regular user documentation. http://inkscape.org/ http://www.imagemagick.org/script/index.php

  • 'Graphviz' for drawing directed graphs. This is required for building the Lepton developer API documentation, not for the regular user documentation. http://www.graphviz.org/

Troubleshooting dependencies

"I've installed the libfoo library, but ./configure isn't picking it up!"

Many modern operating system distributions split a library into two packages:

  1. a libfoo package, which contains the files necessary to run programs which use libfoo.

  2. a libfoo-dev or libfoo-devel package, which contains the files necessary to compile programs which use libfoo.

If you're having problems, make sure that you have all of the necessary dev or devel packages installed.

"I have installed two versions of guile, but ./configure uses a wrong one!"

Specify right guile binary on the configure stage, e.g.:

./configure GUILE=/usr/bin/guile-2.0

Installation from a source archive

First extract the archive to a sensible place:

tar -xzvf lepton-eda-<version>.tar.gz && cd lepton-eda-<version>

Run the configuration script. You'll probably want to specify a custom directory to install Lepton to, for example:

./configure --prefix=$HOME/lepton

You can then compile Lepton:

make

And install it (if you used a --prefix outside your $HOME directory, you may need to run this as root):

make install

Installation from the git repository

Lepton uses the git version control system. If you wish to try out the very latest version of Lepton, you will need to install some extra tools in addition to the ones listed above:

Once you have these installed, you need to clone the Lepton git repository:

git clone https://github.com/lepton-eda/lepton-eda.git

To generate the configure script, run:

./autogen.sh

You can then proceed to configure and build Lepton as described above.

Noticeable configure options

--with-gtk3

You can build Lepton with GTK3 GUI support if you enable it on the configure stage:

./configure --with-gtk3

Please note that GTK2 and GTK3 version of lepton-attrib require different additional libraries. libgtkextra is required for the GTK2 version, and gtksheet for GTK3. The latter can be found here.

--disable-attrib

Installation of lepton-attrib can be disabled on the configure stage:

./configure --disable-attrib

--enable-contrib

This option enables build of several contributed tools that may come in handy for some tasks. Please see Lepton reference manual for more information on what utilities are available.

Building Lepton developer API documentation

Several of the Lepton libraries and applications have doxygen API documentation available. To generate the API documentation from the source code, install doxygen (see Dependencies above. Next, add --enable-doxygen to your configure command line, i.e.:

./configure --enable-doxygen

To compile the documentation (quite a slow process), run:

make doxygen

The documentation can then be found in:

*/docs/html/index.html

Getting help

There are several ways to get help with installing and using Lepton and the rest of the gEDA tools:

  • Chat with Lepton developers and users at gitter.im. You can sign in there using your Twitter, GitHub or GitLab account (no registration is required to read the messages posted there). This is probably the fastest way to get in touch with us.

  • If you prefer using IRC, there is now a Lepton channel on OFTC: irc.oftc.net#lepton-eda. Sometimes you can catch Lepton users or developers there.

  • Lepton documentation page is the first place to search for Lepton specific information.

  • Lepton EDA wiki is a resource containing additional information that did not get into the main documentation.

  • The gEDA website http://www.geda-project.org has more extensive information on the gEDA tools, and links to some successful projects which use gEDA.

  • The gEDA documentation wiki contains a large amount of helpful information. A static copy is included with this distribution; see the docs/wiki/index.html file. The wiki is accessible online at http://wiki.geda-project.org/.

  • If the resources above didn't help you resolve your problem, or you are having a design problem that you want to get help with, consider subscribing to and posting your question to the geda-user mailing list (http://wiki.geda-project.org/geda:mailinglists). You can also browse and search the mailing list archives.

  • If you have discovered a bug, have a feature request, or have written a patch to Lepton, please create an item on the lepton-eda bug tracker page: https://github.com/lepton-eda/lepton-eda/issues

License

Lepton EDA (this package) is freely distributable under the GNU Public License (GPL) version 2.0 or (at your option) any later version. See the COPYING file for the full text of the license.

The programs and associated files are:

Copyright (C) 1998-2017 by Ales Hvezda and the respective original authors.

Copyright (C) 2017-2021 Lepton Developers.

See the AUTHORS file for a more extensive list of contributors to Lepton EDA and gEDA.

lepton-eda's People

Contributors

aelmahmoudy avatar alexdaniel avatar alyoshin avatar asomers avatar bdale avatar bert avatar cestrauss avatar clifcox avatar cnieves1 avatar dkogan avatar dmcmahill avatar drforbin avatar ehennes775 avatar eivindkv avatar etihwnad avatar gareth8118 avatar graahnul-grom avatar kkosciusz avatar lance1308 avatar nmschulte avatar noqsi avatar nosuchprocess avatar pcjc2 avatar peter-b avatar ptrckb avatar rccrdo avatar rlutz avatar vzh avatar werner2101 avatar xcthulhu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.