Go to file
EvilSpirit 2b388e7da4 Try to solve even very overconstrained systems.
Before this commit, overconstraining a system past a certain point
resulted in a wrong error message: instead of "redundant constraints",
"unsolvable constraints" was displayed.

To reproduce, place more six or more length constraints with the same
value onto the same line segment.
2016-01-22 07:41:30 +00:00
cmake Rewrite ttf2c to use GNU Unifont and merge with pngchar2c.pl. 2015-12-29 11:15:50 +08:00
debian Build Debian packages with debug symbols. 2016-01-13 06:45:17 +00:00
exposed Replace all ZERO and memset with C++11 brace-initialization. 2016-01-13 06:45:16 +00:00
extlib Update libpng to 1.6.20. 2015-12-26 14:07:11 +08:00
include Add a new length-difference constraint. 2015-12-28 21:37:07 +08:00
src Try to solve even very overconstrained systems. 2016-01-22 07:41:30 +00:00
tools Rasterize non-ASCII glyphs in the UI. 2016-01-13 06:45:16 +00:00
.gitattributes Added a .gitattributes file 2013-11-19 18:17:55 -05:00
.gitignore Build Debian packages with debug symbols. 2016-01-13 06:45:17 +00:00
.gitmodules Make in-tree zlib more robust. 2015-12-28 21:37:06 +08:00
.travis.yml Build Debian packages with debug symbols. 2016-01-13 06:45:17 +00:00
CMakeLists.txt Make sure only *W functions from Win32 API are called. 2016-01-13 06:45:16 +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 Rewrite png2c.pl in C++. 2015-12-29 11:15:50 +08:00
appveyor.yml Rewrite ttf2c to use GNU Unifont and merge with pngchar2c.pl. 2015-12-29 11:15:50 +08: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 official repository of SolveSpace.

Installation

Debian (>=jessie) and Ubuntu (>=trusty)

Binary packages for Ubuntu trusty and later versions are available in ~whitequark/solvespace PPA.

Mac OS X (>=10.6 64-bit)

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

Other systems

See below.

Building on Linux

Building for Linux

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

apt-get install libpng12-dev libjson-c-dev libfontconfig1-dev \
                libgtkmm-2.4-dev libpangomm-1.4-dev libgl-dev libglu-dev \
                libglew-dev cmake

After that, build SolveSpace as following:

mkdir cbuild
cd cbuild
cmake ..
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, a Windows cross-compiler, and Wine with binfmt support. On a Debian derivative (e.g. Ubuntu) these can be installed with:

apt-get install cmake mingw-w64 wine-binfmt

Before building, check out the submodules:

git submodule update --init

After that, build 32-bit SolveSpace as following:

mkdir cbuild
cd cbuild
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw32.cmake ..
make solvespace

Or, build 64-bit SolveSpace as following:

mkdir cbuild
cd cbuild
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw64.cmake ..
make solvespace

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

Space Navigator support will not be available.

Building on Mac OS X

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

brew install cmake libpng

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

After that, build SolveSpace as following:

mkdir cbuild
cd cbuild
cmake ..
make

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

Building on Windows

You will need cmake and Visual C++.

You will also need to check out the git submodules.

After installing them, 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.

Alternatively it is possible to build SolveSpace using MinGW. Run cmake-gui as described above but after pressing "Configure" select the "MSYS Makefiles" generator. After that, run make in the build directory; make sure that the MinGW compiler is in your PATH.

License

SolveSpace is distributed under the terms of the GPL3 license.