Browse Source

Updated build info.

Now building on linux.
pull/90/head
Steven Kirk 11 years ago
parent
commit
64ad11a9dc
  1. 58
      docs/build.md
  2. 28
      docs/mono-build.md
  3. 31
      readme.md

58
docs/build.md

@ -0,0 +1,58 @@
# Building Perspex
## Windows
Perspex requires Visual Studio 2015 to build on Windows.
### Install GTK Sharp
To compile the full project under windows, you must have gtk-sharp installed. However, if you're
not interested in building the cross-platform bits you can simply unload the Perspex.Cairo and
Perspex.Gtk project in Visual Studio.
### Clone the Perspex repository
git clone https://github.com/grokys/Perspex.git
We currently need to build our own private version of ReactiveUI as it doesn't work on mono. This
is linked as a submodule in the git repository, so run:
git submodule update --init
## Linux
---------------------------
This guide Written for Ubuntu 15.04 - I'm not sure how well it applies to other distributions, but
please submit a PR if you have anything to add.
### Install Latest Mono
That the time of writing, mono 4.2 aplha was needed to build. Add mono package sources by following
instructions below for the stable channel, and then add the alpha channel to
`/etc/apt/sources.list.d/mono-xamarin-alpha.list` as well.
http://www.mono-project.com/docs/getting-started/install/linux/#debian-ubuntu-and-derivatives
Then install the needed packages:
sudo apt-get install git mono-devel referenceassemblies-pcl monodevelop
### Clone the Perspex repository
git clone https://github.com/grokys/Perspex.git
We currently need to build our own private version of ReactiveUI as it doesn't work on mono. This
is linked as a submodule in the git repository, so run:
git submodule update --init
### Load the Project in MonoDevelop
Start MonoDevelop and open the `Perspex.sln` solution. Wait for MonoDevelop to install the
project's NuGet packages.
Set the TestApplication project as the startup project and click Run.
There will be some compile errors in the tests, but ignore them for now.
You can track the Linux version's progress in the [Linux issue](https://github.com/grokys/Perspex/issues/78).

28
docs/mono-build.md

@ -1,28 +0,0 @@
Compiling Perspex on Ubuntu
---------------------------
Written for Ubuntu 15.04.
Install Latest Mono
-------------------
Add mono package sources by following instructions at:
http://www.mono-project.com/docs/getting-started/install/linux/#debian-ubuntu-and-derivatives
Then install the needed packages:
sudo apt-get install git mono-devel referenceassemblies-pcl monodevelop
Clone the Perspex repository
----------------------------
git clone https://github.com/grokys/Perspex.git
Load the Project in MonoDevelop
-------------------------------
Start MonoDevelop and open the `Perspex.sln` solution. Wait for MonoDevelop to install the
project's NuGet packages.
Set the TestApplication-Mono project as the startup project and click Run.

31
readme.md

@ -9,10 +9,9 @@ A multi-platform .NET UI framework.
## Background ## Background
Perspex is a multi-platform windowing toolkit - somewhat like WPF - that is Perspex is a multi-platform windowing toolkit - somewhat like WPF - that is intended to be multi-
intended to be multi-platform (more about that below). It supports XAML, platform. It supports XAML, lookless controls and a flexible styling system, and runs on Windows
lookless controls and a flexible styling system, and runs on Windows using using Direct2D and other operating systems using Gtk & Cairo.
Direct2D and other operating systems using Gtk & Cairo.
## Current Status ## Current Status
@ -29,34 +28,18 @@ framework.
As mentioned above, Perspex is still in alpha and as such there's not much documentation yet. You can As mentioned above, Perspex is still in alpha and as such there's not much documentation yet. You can
take a look at the [alpha release announcement](http://grokys.github.io/perspex/perspex-alpha/) for an take a look at the [alpha release announcement](http://grokys.github.io/perspex/perspex-alpha/) for an
overview of how to get started but probably the best thing to do for now is to already know a little bit about WPF/Silverlight/UWP/XAML and ask questions in our [Gitter room](https://gitter.im/grokys/Perspex). overview of how to get started but probably the best thing to do for now is to already know a little bit
about WPF/Silverlight/UWP/XAML and ask questions in our [Gitter room](https://gitter.im/grokys/Perspex).
There's also a high-level [architecture document](docs/architecture.md) that is currently a little bit There's also a high-level [architecture document](docs/architecture.md) that is currently a little bit
out of date, and I've also started writing blog posts on Perspex at http://grokys.github.io/. out of date, and I've also started writing blog posts on Perspex at http://grokys.github.io/.
Contributions are always welcome! Contributions are always welcome!
# Multi-platform you say?
Well, yes, that is the intention. However unfortunately as of the time of this
first alpha, Perspex is only shipping with a Windows backend. There *is* a
Gtk/Cairo backend that's working pretty well (at least on Windows) but it's not
included in this release due to packaging issues. In addition, the framework did
work on Linux at one point but with the recent Mono 4.0 something has gone
wrong, and we need time to work out what that is. Getting Perspex working again
on non-windows support is the next thing we'll be concentrating on. You can
track the progress on Linux in the [issue](https://github.com/grokys/Perspex/issues/78).
## Building and Using ## Building and Using
In order to build Perpex under Windows you need a compiler that supports C# 6 such See the [build instructions here](https://github.com/grokys/Perspex/blob/master/docs/build.md)
as Visual Studio 2015. To compile the project under windows, you must have gtk-sharp
installed. However, if you're not interested in building the cross-platform bits you
can simply unload the Perspex.Cairo and Perspex.Gtk project in Visual Studio.
To build with mono (even though everything's not fully working as yet) check out the
[instructions here](docs/mono-build.md) and the [Linux issue](https://github.com/grokys/Perspex/issues/78).
## Contributing ## ## Contributing ##
Please read the [contribution guidelines](Docs/contributing.md) before submitting a pull request. Please read the [contribution guidelines](docs/contributing.md) before submitting a pull request.

Loading…
Cancel
Save