3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

そろそろ Goを始めようと思う(revelフレームワークinstallではまった)

Posted at

高速な Go言語、そろそろ勉強始めようと思ったのでまずインストールしたが
Segmentation fault: 11
使用OSは MacOS 10.9.5(Mavericks)

結論から言うと portでインストールすると Mercurialが正しくインストールされないので
brewに乗り換えました

MacPortsを使い インストール

$ sudo port selfupdate
$ sudo port install go

テストコード

helloworld.go
package main

import fmt "fmt"

func main() {
    fmt.Printf("Hello world\n")
}

実行

$ go run helloworld.go
Hello world

goは正常にインストールできたようだ

revel インストール

revelという PlayFlameworkを参考にして作られたフレームワークがあるので
それを使ってみようと思います

go作業ディレクトリ設定

$ mkdir ~/gocode
$ echo 'export GOPATH="$HOME/gocode"' >> ~/.bash_profile
$ source ~/.bash_profile

goは このGOPATH以下に ソースやパッケージ等が置かれます

goコマンドを使い revelをインストール

githubよりインストール

$ go get github.com/revel/revel

Mercurialが必要
revelはgitではなくMercurialでソース管理しているようです。
Mercurialがなかったのでインストールする事にします

python&Mercurialインストール

Mercurialはpythonで書かれているので 入ってなければpythonもインストール

$ sudo install python27
$ sudo install Mercurial

確認

$ hg
Segmentation fault: 11

あら・・ hg(Mercurial)が落ちました
どうやら pythonがエラーで落ちるようです

pythonやMercurialを再インストール等を試みましたが どうやっても落ちるので

Macportsを削除し brewにします

Macports削除

$ sudo port -fp uninstall installed
$ sudo rm -rf \
    /opt/local \
    /Applications/DarwinPorts \
    /Applications/MacPorts \
    /Library/LaunchDaemons/org.macports.* \
    /Library/Receipts/DarwinPorts*.pkg \
    /Library/Receipts/MacPorts*.pkg \
    /Library/StartupItems/DarwinPortsStartup \
    /Library/Tcl/darwinports1.0 \
    /Library/Tcl/macports1.0 \
    ~/.macports

brewのインストール

$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
Whoops, the Homebrew installer has moved! Please instead run:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Also, please ask wherever you got this link from to update it to the above.
Thanks!

homebrewのインストーラーのpathが移動したとの事なので 新しいURLでインストール

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brewでインストールし直す

$ brew install python
$ brew install mercurial

mercurial確認

$ hg
-bash: hg: command not found

hgへのパスが通ってないので通す

/usr/local/bin
を $PATHに追加

mercurial再確認

$ hg
Mercurial Distributed SCM

basic commands:

 add           add the specified files on the next commit
 annotate      show changeset information by line for each file
 clone         make a copy of an existing repository
 commit        commit the specified files or all outstanding changes
 diff          diff repository (or selected files)
 export        dump the header and diffs for one or more changesets
 forget        forget the specified files on the next commit
 init          create a new repository in the given directory
 log           show revision history of entire repository or files
 merge         merge working directory with another revision
 pull          pull changes from the specified source
 push          push changes to the specified destination
 remove        remove the specified files on the next commit
 serve         start stand-alone webserver
 status        show changed files in the working directory
 summary       summarize working directory state
 update        update working directory (or switch revisions)

use "hg help" for the full list of commands or "hg -v" for details

ok

revelインストール

$ cd ~/gocode
$ go get github.com/robfig/revel
$ go get github.com/robfig/revel/revel
$ go build -o bin/revel github.com/robfig/revel/cmd

revel確認

$ revel new test
$ revel run test

起動を確認したら
http://localhost:9000 にアクセス

It works!

が出ればオッケー

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?