UPDATE 2008.01.16: For some reason the original patch file I uploaded was wrong. I’ve corrected it and the correct file should be referenced now. Apply with “patch – p0 < qcad-2.0.5.0-1-fink-qt3mac.patch”.
NOTE: I can’t seem to build this on an Intel Mac due to problems with gcc-3.3 (see these posts about why you can’t build projects using gcc-3.3 on Intel Macs). I’m trying to get this to build properly on an Intel Mac using gcc-4.0, but haven’t been successful yet, unfortunately. Until then, this only works for Power PC Macs.
————————
Another technical post, so skip if you don’t like the words “compile”, “fink”, or “qmake”.
I’ve been looking for a good free or open-source CAD/CAAD software for OS X. Most products, like SolidWorks or Rhino, are not only not-free, but also not available on OS X. For my thesis work I’ve been trying to use as much open-source software as possible, perhaps as a means of masochism, but more because I want to results of my work to be available and used by as many as possible. One way to do that is to use software that anybody can get for themselves, building it on a variety of platforms as needed.
Of course, it might take a few days to get something built because of various strange issues, but that’s a matter for another post.
So QCad had gotten a lot of good responses from people online as the most full-featured open-source CAD software available for Linux, and thus for OS X as well. To give RibbonSoft credit where credit is due, they release the source for QCad under the GPL; however, binaries are available only in time-limited demos. Unless, of course, your Linux distribution prepares binaries for you. (Ubuntu does, so I had QCad up and running on my Linux machine in no time.) However, on OS X, the only compiled binaries are available from RibbonSoft. Cheap grad student that I am with fungible deadlines I decided to give compiling QCad a shot. I quickly ran into a number of problems, the solutions to which I will try and detail below.
So, in order to compile QCad on OS X with fink, do the following:
- Make sure you have gcc-3.3 installed.
- Install the qt3mac packages from fink (including -shlibs, -apps, etc.).
- Download the QCad Community Edition source.
- Apply the following patch to the source directory
- cd to scripts/, run “./build_qcad.sh notrans”
After a while you’ll have a QCad.app living in qcad/. Just copy to your /Applications folder (or wherever you want) and you should be set. Examples, library, and documentation can be copied from a downloaded demo version.
The reasons for the changes in the patch are the following:
- For some reason fink splits the mkspecs, translations, etc., from qt3mac and puts it under /sw/share/qt3mac, instead of under /sw/lib/qt3mac, like it is with qt3.
- I ran into linking problems when using gcc-4.0, and for some reason qmake wasn’t honoring the settings of gcc_select, so I had to explicitly give the names of the gcc binaries I wanted to use.
- The “-pedantic” flag causes problems.
Note that I haven’t tried building from start to finish using this patch on a clean download, but I think it should work. Let me know if there are issues.