Merge pull request #661 from harshavardhana/pr_out_fix_builddeps_paths_for_golang_installation
commit
d0dd047bef
@ -1,80 +0,0 @@ |
||||
## Ubuntu (Kylin) 14.04 |
||||
### Build Dependencies |
||||
This installation document assumes Ubuntu 14.04 or later on x86-64 platform. |
||||
|
||||
##### Install YASM |
||||
|
||||
Erasure depends on Intel ISAL library, ISAL uses Intel AVX2 processor instructions, to compile these files one needs to install ``yasm`` which supports AVX2 instructions. AVX2 support only ended in ``yasm`` from version ``1.2.0``, any version below ``1.2.0`` will throw a build error. |
||||
|
||||
```sh |
||||
$ sudo apt-get install yasm |
||||
``` |
||||
|
||||
##### Install Go 1.4+ |
||||
Download Go 1.4+ from [https://golang.org/dl/](https://golang.org/dl/) and extract it into ``${HOME}/local`` and setup ``${HOME}/mygo`` as your project workspace folder. |
||||
For example: |
||||
```sh |
||||
.... Extract and install golang .... |
||||
|
||||
$ wget https://storage.googleapis.com/golang/go1.4.linux-amd64.tar.gz |
||||
$ mkdir -p ${HOME}/local |
||||
$ mkdir -p $HOME/mygo |
||||
$ tar -C ${HOME}/local -xzf go1.4.linux-amd64.tar.gz |
||||
|
||||
.... Export necessary environment variables .... |
||||
|
||||
$ export PATH=$PATH:${HOME}/local/go/bin |
||||
$ export GOROOT=${HOME}/local/go |
||||
$ export GOPATH=$HOME/mygo |
||||
$ export PATH=$PATH:$GOPATH/bin |
||||
|
||||
.... Add paths to your bashrc .... |
||||
|
||||
$ echo "export PATH=$PATH:${HOME}/local/go/bin" >> ${HOME}/.bashrc |
||||
$ echo "export GOROOT=${HOME}/local/go" >> ${HOME}/.bashrc |
||||
$ echo "export GOPATH=$HOME/mygo" >> ${HOME}/.bashrc |
||||
$ echo "export PATH=$PATH:$GOPATH/bin" >> ${HOME}/.bashrc |
||||
``` |
||||
|
||||
## Mac OSX (Yosemite) 10.10 |
||||
### Build Dependencies |
||||
This installation document assumes Mac OSX Yosemite 10.10 or later on x86-64 platform. |
||||
|
||||
##### Install brew |
||||
```sh |
||||
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" |
||||
``` |
||||
|
||||
##### Install Git |
||||
```sh |
||||
$ brew install git |
||||
``` |
||||
|
||||
##### Install YASM |
||||
|
||||
Erasure depends on Intel ISAL library, ISAL uses Intel AVX2 processor instructions, to compile these files one needs to install ``yasm`` which supports AVX2 instructions. AVX2 support only ended in ``yasm`` from version ``1.2.0``, any version below ``1.2.0`` will throw a build error. |
||||
|
||||
```sh |
||||
$ brew install yasm |
||||
``` |
||||
|
||||
##### Install Go 1.4+ |
||||
On MacOSX ``brew.sh`` is the best way to install golang |
||||
|
||||
For example: |
||||
```sh |
||||
.... Install golang using `brew` .... |
||||
|
||||
$ brew install go |
||||
$ mkdir -p $HOME/mygo |
||||
|
||||
.... Export necessary environment variables .... |
||||
|
||||
$ export GOPATH=$HOME/mygo |
||||
$ export PATH=$PATH:$GOPATH/bin |
||||
|
||||
.... Add paths to your bashrc .... |
||||
|
||||
$ echo "export GOPATH=$HOME/mygo" >> ${HOME}/.bashrc |
||||
$ echo "export PATH=$PATH:$GOPATH/bin" >> ${HOME}/.bashrc |
||||
``` |
@ -1,30 +0,0 @@ |
||||
### Setup your Erasure Github Repository |
||||
Fork [Erasure upstream](https://github.com/minio/erasure/fork) source repository to your own personal repository. Copy the URL and pass it to ``go get`` command. Go uses git to clone a copy into your project workspace folder. |
||||
```sh |
||||
$ git clone https://github.com/$USER_ID/erasure |
||||
$ cd erasure |
||||
$ mkdir -p ${GOPATH}/src/github.com/minio |
||||
$ ln -s ${PWD} $GOPATH/src/github.com/minio/ |
||||
``` |
||||
|
||||
### Compiling Erasure from source |
||||
```sh |
||||
$ go generate |
||||
$ go build |
||||
``` |
||||
### Developer Guidelines |
||||
To make the process as seamless as possible, we ask for the following: |
||||
* Go ahead and fork the project and make your changes. We encourage pull requests to discuss code changes. |
||||
- Fork it |
||||
- Create your feature branch (git checkout -b my-new-feature) |
||||
- Commit your changes (git commit -am 'Add some feature') |
||||
- Push to the branch (git push origin my-new-feature) |
||||
- Create new Pull Request |
||||
* When you're ready to create a pull request, be sure to: |
||||
- Have test cases for the new code. If you have questions about how to do it, please ask in your pull request. |
||||
- Run `go fmt` |
||||
- Squash your commits into a single commit. `git rebase -i`. It's okay to force update your pull request. |
||||
- Make sure `go test -race ./...` and `go build` completes. |
||||
* Read [Effective Go](https://github.com/golang/go/wiki/CodeReviewComments) article from Golang project |
||||
- `Erasure` project is strictly conformant with Golang style |
||||
- if you happen to observe offending code, please feel free to send a pull request |
@ -0,0 +1,64 @@ |
||||
## Ubuntu (Kylin) 14.04 |
||||
### Build Dependencies |
||||
This installation document assumes Ubuntu 14.04+ on x86-64 platform. |
||||
|
||||
##### Install Git, GCC, yasm |
||||
```sh |
||||
$ sudo apt-get install git build-essential yasm |
||||
``` |
||||
|
||||
##### Install Go 1.4+ |
||||
|
||||
Download Go 1.4+ from [https://golang.org/dl/](https://golang.org/dl/). |
||||
|
||||
```sh |
||||
$ wget https://storage.googleapis.com/golang/go1.4.linux-amd64.tar.gz |
||||
$ mkdir -p ${HOME}/bin/ |
||||
$ mkdir -p ${HOME}/go/ |
||||
$ tar -C ${HOME}/bin/ -xzf go1.4.linux-amd64.tar.gz |
||||
``` |
||||
##### Setup GOROOT and GOPATH |
||||
|
||||
Add the following exports to your ``~/.bashrc``. Environment variable GOROOT specifies the location of your golang binaries |
||||
and GOPATH specifies the location of your project workspace. |
||||
|
||||
```sh |
||||
$ export GOROOT=${HOME}/bin/go |
||||
$ export GOPATH=${HOME}/go |
||||
$ export PATH=$PATH:${HOME}/bin/go/bin:${GOPATH}/bin |
||||
``` |
||||
|
||||
## OS X (Yosemite) 10.10 |
||||
### Build Dependencies |
||||
This installation document assumes OS X Yosemite 10.10+ on x86-64 platform. |
||||
|
||||
##### Install brew |
||||
```sh |
||||
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" |
||||
``` |
||||
|
||||
##### Install Git, Python |
||||
```sh |
||||
$ brew install git python yasm |
||||
``` |
||||
|
||||
##### Install Go 1.4+ |
||||
|
||||
Install golang binaries using `brew` |
||||
|
||||
```sh |
||||
$ brew install go |
||||
$ mkdir -p $HOME/go |
||||
``` |
||||
|
||||
##### Setup GOROOT and GOPATH |
||||
|
||||
Add the following exports to your ``~/.bashrc``. Environment variable GOROOT specifies the location of your golang binaries |
||||
and GOPATH specifies the location of your project workspace. |
||||
|
||||
```sh |
||||
$ export GOPATH=${HOME}/go |
||||
$ export GOVERSION=$(brew list go | head -n 1 | cut -d '/' -f 6) |
||||
$ export GOROOT=$(brew --prefix)/Cellar/go/${GOVERSION}/libexec |
||||
$ export PATH=$PATH:${GOPATH}/bin |
||||
``` |
Loading…
Reference in new issue