The original author of gEDA is Ales Hvezda but there are several other major contributers as well.
It also important to note that the gEDA project has grown quite a bit, since the Spring of 1998. It is no longer one person producing tools. Instead, there are many people involved. A few people are contributing to the original tools, while others are doing their own development on their own tools. So, gEDA does not refer to the original tools anymore (those tools now stand on their own now), but instead it refers to all the projects which are free and are somehow associated with this webpage or the geda-dev mailing list. By associating with gEDA, free software authors do not give up any control over their tools, but they gain a community which cares about quality and free EDA tools.
gEDA can be pronounced "gee-daahhh" (rhymes with cheetah) or "g-dahhh (short g).
gEDA may not have all the latest cutting edge features found in other packages and may be viewed sometimes as being on the trailing edge of EDA technology, but the tools are becoming useful to a lot of people because the above mentioned points.
The current maintainer is Stefan Petersen spe@geda.seul.org. Updates, suggestion, corrections are welcome.
From the license:
When we speak of free software, we are referring to freedom, not price.
Our General Public Licenses are designed to make sure that you have the
freedom to distribute copies of free software (and charge for this service
if you wish), that you receive source code or can get it if you want it,
that you can change the software or use pieces of it in new free programs;
and that you know you can do these things.
This cannot be stressed enough: gEDA is GPLed software. Therefore nothing proprietary can be distributed with gEDA like part libraries from proprietary EDA products. Conversion program for proprietary libraries will be available, but any converted files which are part of a proprietary product must never find their way into gEDA. Contributed files must be GPLable (or be places under another free license). Please keep this in mind if you wish to contribute something.
To subscribe send an email to: majordomo@geda.seul.org with:
subscribe geda-devin the body.
To unsubscribe send an email to: majordomo@geda.seul.org with
unsubscribe geda-devin the body.
To send email to the list use the address: geda-dev@geda.seul.org
Remember, geda-dev@geda.seul.org is for the actual list traffic.
For administrative commands, use majordomo@geda.seul.org
Please see the links page for more free EDA tools which are not under the gEDA umbrella, but are also freely available.
Unsupported Platforms
The following platforms have/need testers:
If you have the time and access to one of the above platforms, please help out and test gEDA. All a tester has to do is compile gEDA and then run some basic tests. This helps flush out bugs quickly. Even if there is a tester listed for one of the platforms, please help out; the more testers we have the better. Please send e-mail to geda-dev@geda.seul.org (the mailing list) if you would like to become a tester.
Recent version of gEDA require GTK+ 1.2.*. GTK+ 1.1.x is NOT supported by gEDA anymore.
Be sure to read the README/INSTALL file which comes with gEDA for more tips and tricks when compiling/installing gEDA.
If you get errors regarding gtk when configuring/compiling gEDA, check that:
--with-gtk-config=path change where gtk-config is located
If you get errors regarding gtk when running any gEDA tool, check that:
gEDA uses GUILE as its scripting engine. Why? Guile is a powerful scripting language and it was decided early on by the gEDA authors that inventing "yet another scripting language" was a waste of time.
Guile is an implementation of the interpreted language Scheme. Guile is very nice in that it is easy embeddable in programs.
Guile is used (at the moment) for parsing resource files, handle key mappings and as a "backend" for gnetlist. True scripting capabilities are being implemented right now. The first example of the scripting capabilities of gschem can be seen at the online symbol library which was created by gschem being driven by a guile script and Bourne shell scripts.
At Scheme's Homepage can you find more information about Scheme, for example introductory texts. An example on a quite short introduction is "Teach Yourself Scheme in Fixnum Days".
An original goal was to take an object oriented like approach to gschem and friends, but it has deviated a bit from this. Hopefully the first rewrite will address some of the code organization problems.
It is important to note that this should not discourage anybody who wants to code in C++, it is just that everything else is written in C. There are people writing EDA tools in other languages (Java and C++).
I (Ales) am changing my opinion of C++. The above reasons were at one point valid, however, now (year 2000), these reasons are no longer true. I am bouncing the idea around of using C++ in the first rewrite of gschem and friends (it is a long time away; I want to get the C version mostly done first).
Most symbol libraries available in commercial EDA systems often have a copyright attached to them. This copyright makes it impossible to use them in gEDA. To get a decent library of symbols, that is as free as the rest of gEDA, the project is in great need of symbols.
If you have made some symbols (following the guidelines) you can submit them in several ways:
If/when you submit symbols, they will be released under the GPL. Please make sure that the symbols you are contributing are freely distributable. Be sure that the symbol representation is not proprietary (ie it is not under any NDA or any other copyright which forbids free distribution).
setenv LD_LIBRARY_PATH gEDA-version/libgeda/.libs (csh/tcsh) or export LD_LIBRARY_PATH=gEDA-version/libgeda/.libs (sh/bash)where gEDA-version is the path to the gEDA untarred directory. These environment variables tell the loader where to find the libgeda shared library. If you do not want to bother with this or do not want shared libraries, you can configure gEDA not to build the shared libraries. Do this at configure time by supplying --disable-shared as a parameter to the ./configure script. Now you can run the debugger:
gdb .libs/gschem(Assuming that you are in the gEDA-version/gschem directory.) Once the debugger starts up, run the program till it core dumps and then do a "where" (stack trace) and send that to the above mentioned persons. You might also have to rebuild the binaries with the -g flag (debugging symbols).
Last update: Fri Jan 12 23:29:01 EST 2001