Instructions for building on various platforms

Include Vagrant files for FreeBSD 10.2 and Ubuntu Linux 14.04 LTS.
This commit is contained in:
Nathan Fiedler
2016-02-10 18:11:32 -08:00
parent f115a7a774
commit ebf4559ede
4 changed files with 115 additions and 1 deletions

View File

@ -7,7 +7,6 @@ A somewhat safe Rust interface to the [ImageMagick](http://www.imagemagick.org/)
* Rust * Rust
* Cargo * Cargo
* ImageMagick (version 6 or higher) * ImageMagick (version 6 or higher)
* On Mac OS X: Xcode and Command Line Tools (`xcode-select --install`)
## Build and Test ## Build and Test

70
docs/Development_Setup.md Normal file
View File

@ -0,0 +1,70 @@
# Development Setup
## Mac OS X
1. Install Xcode
1. Install Homebrew
1. Install Git
1. Install Rust and Cargo
1. Install ImageMagick
```
$ xcode-select --install
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew install git
$ brew install rust
$ brew install imagemagick
```
Then build in the usual manner, as shown in the `README.md` file (i.e. `cargo build` and `cargo test`).
## FreeBSD
1. Install Git
1. Install Rust
1. Install Cargo
1. Install ImageMagick
1. Install the Clang libraries
```
$ sudo pkg install -y git
$ sudo pkg install -y rust
$ sudo pkg install -y cargo
$ sudo pkg install -y ImageMagick-nox11
$ sudo pkg install -y clang-devel
```
### Building
The rust-bindgen tool (or one of its dependencies) needs a little help finding the Clang library during the build process, so set `LIBCLANG_PATH` to the path of `libclang.so`. The steps below work for FreeBSD 10.2.
```
$ setenv LIBCLANG_PATH /usr/local/llvm-devel/lib
$ cargo build
$ cargo test
```
## Ubuntu Linux
1. Install Git
1. Install Rust and Cargo
1. Install ImageMagick
1. Install the Clang libraries
These steps are known to work for Ubuntu Linux 14.04 LTS.
```
$ sudo apt-get install git
$ curl -sSf https://static.rust-lang.org/rustup.sh | sh
$ sudo apt-get build-dep imagemagick
$ wget http://www.imagemagick.org/download/ImageMagick.tar.gz
$ tar zxf ImageMagick.tar.gz
$ cd ImageMagick-*
$ ./configure
$ make
$ sudo make install
$ cd ..
$ sudo apt-get install libclang-dev
```
Then build in the usual manner, as shown in the `README.md` file (i.e. `cargo build` and `cargo test`).

25
vagrant/freebsd10/Vagrantfile vendored Normal file
View File

@ -0,0 +1,25 @@
#
# Vagrantfile for FreeBSD 10.2 test environment.
#
Vagrant.configure(2) do |config|
config.vm.box = "freebsd/FreeBSD-10.2-RELEASE"
# this box needs a MAC address
config.vm.base_mac = '0800273E2877'
# need enough memory to build syntex_syntax crate
config.vm.provider 'virtualbox' do |vb|
vb.memory = 2048
end
# bring the system up to date
config.vm.provision "shell", inline: <<-SHELL
sudo freebsd-update fetch install
sudo pkg update
sudo pkg upgrade -y
sudo pkg autoremove -y
sudo pkg clean -y
SHELL
end

20
vagrant/ubuntu14/Vagrantfile vendored Normal file
View File

@ -0,0 +1,20 @@
#
# Vagrantfile for Ubuntu 14.04 test environment.
#
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
# need enough memory to build syntex_syntax crate
config.vm.provider 'virtualbox' do |vb|
vb.memory = 2048
end
# bring the system up to date
config.vm.provision "shell", inline: <<-SHELL
sudo apt-get autoremove
sudo apt-get update
sudo apt-get upgrade
SHELL
end