From FreeCAD Documentation
Revision as of 16:19, 14 September 2011 by Splineman (talk | contribs)
Jump to navigation Jump to search

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 correctly 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. In the meantime, you can always download and install the python-pivy debian package from here which works perfectly fine on ubuntu lucid.

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 these 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:

  • 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

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.

I have troubles running FreeCAD on Mac OSX

The Mac platform is less easy to support than Windows or Linux, since none of the core developers owns one. The OSX packages are compiled by volunteering FreeCAD users, and they might sometimes not work correctly on your machine, depending on your system. Your best chance is probably to head to the forums, look for Mac OSX-related threads, and discuss your problem there or see if someone else encountered a solution.

Using FreeCAD

Is FreeCAD really free? Even for commercial use?

FreeCAD is open-source software, and is free not only to use, for yourself or for doing comercial work, but also to distribute, modify, or even use in a closed-source application. To resume, you are free to do (almost) anything you want with it. See the license page for more details.

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. There is also a new Tutorials section containing a few resources. 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.

Is there documentation for newcomers? How can I learn to use FreeCAD?

There is at the moment still little documentation for beginners, unfortunately, but the new Tutorials section already contains a couple of pages to get you started.

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...

Contributing to FreeCAD

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 or make a request on our issue tracker!
  • 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.

I want to start translating the wiki in my own language. What do I do?

This wiki is hosting a lot of contents. The most up-to-date and interesting material is gathered in the manual. So the first step is to check if the manual translation has already been started for your language (look in the left sidebar, under "manual"). If not, head to the forum and say that you want to start a new translation, we'll create the basic setup for the language you want to work.

You must then gain wiki edit permission (see previous question in this FAQ)

If your language is already listed, see what pages are still missing a translation (they will be listed in red). The technique is simple: go into a red page, and copy/paste the contents of the corresponding english page, and start translating. Do not forget to include all the tags and templates from the original english page. Some of those templates will have an equivalent in your language (for example, there is a french Docnav template called Docnav/fr). Look at other already translated pages to see how they did it.

Then, once you translated a page, you must add to the original english page a link to your translation, so readers know that there is a translated version available, using the {{Languages}} template. Look at how other translators did it to do the same.

And if you are unsure, head to the forums and ask people to check what you did and tell you if it's right or not.

Can I spread the word around? Reuse any of the FreeCAD artwork on a website? Or even in another application?

Sure. All artwork of FreeCAD is LGPL, same as the FreeCAD code. Help yourself on the Artwork page...

Available translations of this page: Flag-es.jpg Flag-it.jpg Template:Se