Go to file
whitequark e2e9167210 Get rid of the MAX_SELECTED restriction in GroupSelection(). 2016-08-13 05:20:43 +00:00
.travis Travis: build with clang, so that we can use its sanitizers. 2016-08-07 19:22:04 +00:00
cmake Add Cairo (and, transitively, Pixman) dependencies. 2016-08-01 00:48:37 +00:00
debian Add Cairo (and, transitively, Pixman) dependencies. 2016-08-01 00:48:37 +00:00
exposed Rewrite declarations of form f(void) as f(). 2016-05-20 12:43:20 +00:00
extlib Update libdxfrw. 2016-08-13 02:19:31 +00:00
include Enable -Wall -Wextra -Wno-unused-parameter on GCC/Clang. 2016-05-08 00:01:35 +00:00
res Implement "view → set to full scale" text window command. 2016-08-01 14:03:16 +00:00
src Get rid of the MAX_SELECTED restriction in GroupSelection(). 2016-08-13 05:20:43 +00:00
test CMake: use pkg-config directories in test/. 2016-08-07 17:33:27 +00:00
.gitattributes Add a simple harness for automated, headless testing. 2016-08-01 00:48:37 +00:00
.gitignore Add a simple harness for automated, headless testing. 2016-08-01 00:48:37 +00:00
.gitmodules Add Cairo (and, transitively, Pixman) dependencies. 2016-08-01 00:48:37 +00:00
.travis.yml Move everything from whitequark/solvespace to solvespace/solvespace. 2016-04-23 19:39:39 +00:00
CHANGELOG.md Get rid of the MAX_SELECTED restriction in GroupSelection(). 2016-08-13 05:20:43 +00:00
CMakeLists.txt CMake: disable unsigned overflow sanitizer check. 2016-08-07 19:27:58 +00:00
COPYING.txt Changes in preparation for the release of SolveSpace under the GPL, 2013-07-28 14:08:34 -08:00
README.md README: clarify Windows instructions. 2016-08-07 17:19:47 +00:00
appveyor.yml Add a simple harness for automated, headless testing. 2016-08-01 00:48:37 +00:00
wishlist.txt Make oops() calls exit instead of entering debugger by default, 2011-03-05 12:52:57 -08:00

README.md

SolveSpace

This repository contains the source code of SolveSpace, a parametric 2d/3d CAD.

Installation

Mac OS X (>=10.6 64-bit), Windows (>=XP 32-bit)

Binary packages for Mac OS X and Windows are available via GitHub releases.

Other systems

See below.

Building on Linux

Building for Linux

You will need CMake, libpng, zlib, json-c, fontconfig, freetype, gtkmm 2.4, pangomm 1.4, OpenGL and OpenGL GLU. To build tests, you will need cairo. On a Debian derivative (e.g. Ubuntu) these can be installed with:

apt-get install libpng-dev libjson-c-dev libfreetype6-dev \
                libfontconfig1-dev libgtkmm-2.4-dev libpangomm-1.4-dev \
                libcairo2-dev libgl-dev libglu-dev cmake

Before building, check out the necessary submodules:

git submodule update --init extlib/libdxfrw

After that, build SolveSpace as following:

mkdir build
cd build
cmake .. -DENABLE_TESTS=OFF
make
sudo make install

A fully functional port to GTK3 is available, but not recommended for use due to bugs in this toolkit.

Building for Windows

You will need CMake and a Windows cross-compiler. On a Debian derivative (e.g. Ubuntu) these can be installed with:

apt-get install cmake mingw-w64

Before building, check out the necessary submodules:

git submodule update --init

After that, build 32-bit SolveSpace as following:

mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw32.cmake \
         -DENABLE_TESTS=OFF
make

Or, build 64-bit SolveSpace as following:

mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw64.cmake \
         -DENABLE_TESTS=OFF
make

The application is built as build/src/solvespace.exe.

Space Navigator support will not be available.

Building on Mac OS X

You will need XCode tools, CMake, libpng and Freetype. To build tests, you will need cairo. Assuming you use homebrew, these can be installed with:

brew install cmake libpng freetype cairo

XCode has to be installed via AppStore; it requires a free Apple ID.

Before building, check out the necessary submodules:

git submodule update --init extlib/libdxfrw

After that, build SolveSpace as following:

mkdir build
cd build
cmake .. -DENABLE_TESTS=OFF
make

The app bundle is built in build/src/solvespace.app.

Building on Windows

You will need git, cmake and Visual C++.

Building with Visual Studio IDE

Check out the git submodules. Create a directory build in the source tree and point cmake-gui to the source tree and that directory. Press "Configure" and "Generate", then open build\solvespace.sln with Visual C++ and build it.

Building with Visual Studio in a command prompt

First, ensure that git and cl (the Visual C++ compiler driver) are in your %PATH%; the latter is usually done by invoking vcvarsall.bat from your Visual Studio install. Then, run the following in cmd or PowerShell:

git submodule update --init
mkdir build
cd build
cmake .. -G "NMake Makefiles" -DENABLE_TESTS=OFF
nmake

Building with MinGW

It is also possible to build SolveSpace using MinGW, though Space Navigator support will be disabled.

First, ensure that git and gcc are in your $PATH. Then, run the following in bash:

git submodule update --init
mkdir build
cd build
cmake .. -DENABLE_TESTS=OFF
make

License

SolveSpace is distributed under the terms of the GPL3 license.