FAQ

This page attempts to answer the most common questions asked on the FreeCAD forums. If you have a problem or question regardign FreeCAD, check below then, if you cannot find an answer for your specific case, head to the FreeCAD forum!

What is the easiest way to install FreeCAD on my system?
The simplest way is to head to the Download page, where you'll find several ready-to-install packages for Windows, Linux and Mac OSX systems. If you are on a debian (>= squeeze) or ubuntu (>= 10.4) system, FreeCAD is already included in the standard software repositories and you can simply install it with the software manager. Note that such packages are only released from time to time, when the developers find it appropriate, and at the moment they do not follow any release schedule.

What if I want to compile FreeCAD myself?
The source code of FreeCAD is always available in the project source code repository. Compiling FreeCAD yourself allows you to use the most recent features being developed, but requires a bit of computer knowledge, although the procedure is fairly simple. Access to the source code is expained here, and we have detailed instructions for compiling on Windows, Linux and Mac OSX.

FreeCAD doesn't start at all
There might be a lot of reasons for that, the most likely is that some library is missing. Try starting FreeCAD form a terminal (typing freecad, see if some error message appears. Read the rest of this FAQ as it can give you more clues to detect the cause of the problem. If nothing helps, tell about it on the forum, there will surely be someone who can help...

FreeCAD 0.9 doesn't run on Ubuntu Lucid Lynx (10.04)
There seems to be a problem with the python-pivy package found in Ubuntu Lucid Lynx repository, which makes some parts of Freecad not working. A bug report has been filed, let's hope it gets fixed soon.

FreeCAD starts normally, but not all icons are displayed, some of them are replaced by a black 'X'
Some parts of FreeCAD depend on an external Python module called Pivy. On Windows, pivy is included in the FreeCAD installation. On Debian/Ubuntu systems, the python-pivy package is part of standard software repositories. On other systems, at the moment, you might have to compile pivy yourself. Note that although some tools are not available without pivy, the rest of FreeCAD works normally.

The HTML start page doesn't display correctly, or mixes up with the 3D view
This is a known bug with version 0.9, and has been fixed in newer versions. The simplest way to avoid it is to turn off the display of the start page in the preferences screen

I have display problems, the 3D view doesn't behave correctly, there is garbage when I move/rotate the view, etc...
FreeCAD depends on OpenGL for displaying 3D contents, and therefore requires a working OpenGL environment. On some systems, OpenGL is not activated by default, and you might need to install or upgrade your graphics drivers. This problems happens most often on Linux systems or on virtual systems. If you are on a linux-based system, try the following steps:
 * verify that your computer has a 3D-capable graphic board
 * type glxinfo in a terminal window, and check in the output that Direct Rendering is set to "yes", and that the OpenGL vendor/renderer/version matches your graphic card.
 * install other OpenGl-based software (for exampe blender) and check if it runs and displays correctly

FreeCAD crashes on startup
A crash might indicate a more serious bug, or some problem in your configuration. Most startup crashes occur because of one of thses two reasons:

OpenGL drivers are not inslalled, or not working properly
This is a very common cause of problem. The symptoms are simply that freecad crashes at startup, or whenever you open a 3D view (for example by creating a new document). Try to find out what your graphic chip is, then find out if it supports OpenGL (most recent chips do), then find the correct driver and install it. A good way to doublecheck if opengl is available is to try to run another opengl application such as blender.

Some library, needed by FreeCAD, is not present on your system, or wasn't found by FreeCAD
There can be two declinations to this problem: either some library is simply missing, therefore FreeCAD will refuse to start, or the library is there, but it is an older version than the one FreeCAD expects, so a crash will occur when FreeCAD will try to use a missing feature from that library. A common example is when you have Qt3 and Qt4 installed on your system, FreeCAD might detect Qt4 but if your Qt installation is not properly configured, some pieces of Qt3 might still be used, provoking crashes.

Please review the installing procedure, make sure you installed all the required libraries (on most linux systems this is done automatically), and check what is the minimum version number for each of the components.

If everything seems correct, describe the problem on the forum or submit a bug. If you are on a linux system, it is easy to do a debug backtrace, which provides very useful information about the crash to the developers:
 * in a terminal, type: gdb freecad (assuming package gdb is installed)
 * inside gdb, type run
 * after the crash, type bt to get the backtrace, that you can include in your bug report.

FreeCAD crashes on creating a new document or opening a file
If FreeCAD crashes when it creates a new 3D view, try launching FreeCAD from a terminal. If a message error appears when the crash occurs, mentioning "Assertion Failed" and a component name beginning with "So" (SoBase, SoFieldContainer, etc...), the chances are very high, especially if you are on linux, that FreeCAD tries to use two different versions of the coin library, which causes the crash. To verify if that is indeed the problem, try the following: If there is any difference, either FreeCAD or SoQt must be recompiled (better to recompile the one that uses the oldest Coin version). The normal behaviour is to try to contact the persons responsible for packaging either SoQt or FreeCAD and kindly ask them to consider recompiling. If you want to undertake that step for yourself, and it is not possible to recompile SoQt because it breaks other applications on your system, you can force FreeCAD to compile with the required Coin version with ./configure --with-coin=DIR. But you have to make sure that the correct devel package to this Coin version is installed.
 * Locate the FreeCAD executable (usually in /usr/lib/FreeCAD/bin)
 * Run the command 'ldd FreeCAD' from a terminal
 * Note down the version of the libCoin.so library that FreeCAD is using (for example libCoin.so.60)
 * Locate the libSoQt.so library (usually in /usr/lib)
 * run 'ldd libSoQt.so' and check if it links to the same coin version as FreeCAD

How do I rotate the 3D view?
FreeCAD has two navigation modes that can be set in the preferences settings dialog. In the default mode, zooming is done with the mouse wheel, panning the view is done by pressing the middle mouse button (wheel), while rotating the view is done by pressing the left and middle mouse buttons simultaneously.

What can I do with FreeCAD? Where do I start?
Head to the Getting started page for a quick description of the tools you can use. The User hub section contains more detailed information about the different workbenches of FreeCAD. Note that since FreeCAD is relatively new, its user interface is still very bare and doesn't feature many tools. But much more advanced functionality is already available to you from python scripting.

How do I extrude stuff into solids? I don't get the right result
The theory is simple: Lines (or wires), when extruded, form faces. Faces, when extruded, form solids. If you extrude something and the result is not a solid, then the something was not a face. If you have lines and you want to extrude a solid from them, you must first select lines that form a closed perimeter (select several objects by pressing CTRL), join them into a wire (Upgrade tool), then make a face from that wire (Upgrade tool again). There you are, if all went well you can now extrude it to a solid.

Now, there can be many little twists that make you obtain the wrong result. The best way to make sure is to check what's inside you are extruding. Objects contents can be easily explored with python. Assuming for example you have an object called "Wire", you could type this into the python console:

obj = FreeCAD.ActiveDocument.Wire shp = obj.Shape print shp.Faces print shp.Wires if shp.Wires: for w in shp.Wires: print w.isClosed

The above code retrieves the shape from an object, shows the faces and wires your object has (if any), and, if there are wires, prints if those wires are closed. If you don't have any face, you won't get a solid. If there is no closed wire, it won't become a face. If you are interested, there is more info about what you can check with python on the part scripting page. If you cannot join several lines into a wire, the most probable cause is that their endpoints don't meet, there must be small gaps between (some of) them. There, I'm afraid, my experience tells me the quickest way would be to redraw a wire on top of them...

FreeCAD is such a great program! How can I help?
There are a lot of different ways to help, even if you are not a programmer. Here are a couple of things you can do:
 * Give some feedback to the FreeCAD developers: It is always useful to know what people think, what they found good, what they miss, etc. Drop a note on the forum giving your opinion!
 * Help with writing documentation: The documentation we have here on this site is sometime very limited. If you discovered something that is not well documented, add your knowledge there!
 * Help others newcomers: Hang around the forum, and help new people to solve basic questions, like how do I install, how do I add a cube, etc...
 * Translate the documentation: Translating this wiki is easy, you just need to add a /languagecode page to create a translation. For example, to translate the Part_Module page (its url ends with index.php?title=Part_Module) to french, you would just add /fr to the url, which will create a Part_Module/fr page.
 * Translate FreeCAD in your own language
 * Write tutorials, or record video tutorials: Tutorials are a very easy way for newcomers to learn a new software. If you did some nice stuff, why not show other people how to do it?
 * Contribute with assets and examples: We still miss good example files in FreeCAD. If you created something good, share it with us!
 * Submit bugs: It is very important to have all the possible bugs fixed. If you find one, report it as clearly as possible, so we can understand exactly what's happening.
 * Try to do some python coding: You never programmed before but you want to try? Python is easy. Read our introduction to python... But beware, you might get addicted quickly!

How can I get edit permission on the wiki?
Our wiki is write-protected by default to avoid spamming. If you want to edit it, simply ask for write permission on the forum or on the irc channel, by asking yorikvanhavre, jriegel or wmayer.