TIS ENGINEER NOTE

ITエンジニアのためのキャリア向上ノウハウブログ

プログラミング

LinuxにGo言語の開発環境を構築する手順

更新日:

利用しているフリーランスエージェントの担当者に

「Go言語は歴史が浅いので、Web開発経験があれば高単価で参加できる案件結構ありますよ」

と言われたので、とりあえず触ってみることに。

Go言語(golang)とは何か

Googleによって2009年に開発されたプログラミング言語です。天下のGoogle様によって提供されているというだけで謎の安心感がありますね。

特徴としては

  • シンプル
  • 実行・コンパイルが早い
  • 標準ライブラリが充実している

といった感じ。まだガッツリ触れていないので体感はできていませんが、エンジニアの技術に左右されず、安定したクオリティの開発が可能な言語といった感じです。

若い言語であるということは、経験の長いエンジニアが存在しないということです。つまりある程度の開発経験があれば、プロジェクトに参加しやすいとなるわけで、学習のコスパはかなりいいんじゃないかと。

何はともあれ開発環境を構築しようということで、Linux環境にGo言語をインストールしていきます。

ちなみに僕はVirtualBoxで作成した仮想環境に、Ubuntu系統のmintというディストリビューションに構築を行いました。ですが今回の方法はディストリビューションを問わず実施可能な手順となっておりますので、是非参考にしてみてください。

LinuxにGo言語をインストール

今回は公式から直接バイナリファイルをダウンロードしてきます。

ちなみにapt-getやyumで単純にインストールしようとすると古いバージョンがインストールされる場合があるので、最新版が欲しい場合はしっかり確認しておきましょう。

他にはgvmというRubyで言うとrbenvのようなバージョン管理ツールもあるようですが、そちらを使ったインストールについてはまたの機会に。

基本的には公式のインストールガイドに沿って行っていきます。

公式からダウンロード

ホームディレクトリなどにファイルをダウンロードします。

~ $ wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz

公式のダウンロードページを確認してみると、この記事を書いている2017/8時点では1.8.3が最新ですので、指定してダウンロードします。

ダウンロードしたファイルの解凍

/usr/localディレクトリにダウンロードしたファイルを解凍します。

~ $ tar -C /usr/local -xzf ~/go1.8.3.linux-amd64.tar.gz

パスの設定

次にGoコマンドなどが使用できるよう、ユーザーの設定ファイルにGo言語のパスを設定します。

私の環境の場合~/.bashrcの末尾に以下の記載を追加しました。

# golang 
export PATH=$PATH:/usr/local/go/bin

設定を保存したら以下のコマンドで変更を適用させましょう。

~ $ source ~/.bashrc

ネットに公開されている構築方法によってはGOPATH(作業ディレクトリ)を設定している場合がありますが、go envコマンドを実行してみると標準でユーザーディレクトリ配下のgoディレクトリに設定されていることが確認できますので、変更したいという場合以外は設定不要です。

インストールの確認

以下のコマンドでインストールしたGoのバージョンを確認できれば、無事インストールが完了したことになります。

~ $ go version
go version go1.8.3 linux/amd64

補足①:パスの変更

今回は特に必要ありませんでしたが、インストール場所については自分で指定した場所に変更することが可能です。

その際は以下のように追加でGOROOTについての記載を行ってください。

export GOROOT=$HOME/go1.X
export PATH=$PATH:$GOROOT/bin

補足②:ディストリビューション固有のパッケージ管理コマンドを使用しなかった理由

Ubuntuなどのディストリビューションであれば下記のコマンドでインストールできるバージョンを確認することができます。

apt-cache showpkg golang

このコマンドの実施結果を確認したところ、1.6しかインストールできない模様でしたので、今回はバイナリからの直接インストールを選択しました。

テストソースの作成

実際にコマンド上で動く簡単なプログラムを作成してみます。

Goファイルの作成

まずは標準で設定されている作業ディレクトリの下にgoファイルを作成します。

~ $ mkdir go
~/go $ cd go/
~/go $ mkdir src/
~/go $ cd src/
~/go/src $ mkdir hello
~/go/src $ cd hello/
~/go/src/hello $ touch hello.go

hello.goの内容は以下の通り。Hello Worldをコマンド上に表示する処理です。

package main

import "fmt"

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

ビルド&実行

作成したGoファイルをビルドします。

~/go/src/hello $ go build

ビルドが完了すると、同ディレクトリにhelloというファイルが作成されますので、そちらを実行します。

~/go/src/hello $ ./hello

hello, worldと表示されれば無事動作確認完了です。

まとめ:思ったよりサクッと開発環境が作れた

思ったよりもシンプルな手順でインストールが完了しました。

経験の浅いエンジニアでも、第一線で活躍する可能性を持つことのできるGo言語。簡単なプログラムを作成して、githubなどにアップするだけでも企業に向けてのアピールポイントとして活用できるでしょう。

僕はひとまずWebフレームワークなどを使用して雰囲気をつかんでみようかと思います。

余談となりますが、冒頭でお話したエージェントについては以下の記事で詳しく書いています。興味があったら合わせて読んでみてください。

https://tisnote.com/geechs-free/

閲覧いただき、ありがとうございました。

よく読まれている記事

エンジニア独立

2018/8/22

【厳選】現役フリーエンジニアが勧めるフリーランスエージェント2選

こんにちは、フリーエンジニアのてぃすです。 エンジニア、特にプログラマーがフリーランスになろうとしたとき、人脈豊富なスーパーエンジニアでもない限り、最も現実的な選択肢がフリーランスエージェントを利用した働き方です。 とはいえエンジニアバブルの昨今、そういったエージェントサービスは数多存在しており、戦国時代状態です。 選択肢が多いということは嬉しいことであり、同時にどれを選べばいいかという悩みにもなります。 各サイトではメリットや自サービスの長所しか書かれていません。当然ですが。 そうなると選ぶ側としては迷 ...

続きを読む

エンジニア独立

2019/4/15

エンジニアがキャリアアップするための3つのテクニック

こんにちは、フリーランスエンジニアのてぃすです。 エンジニアという職業の中でも高収入とライフワークバランスを実現して充実した人生を送っている人もいれば、低い給料と長時間労働で疲弊しきっている人もいます。 僕も半年前まではエンジニアという職業を見限ってしまおうかと真剣に考えるほど、残念な状況にいました。 しかしこのまま終わってしまうのは悔しいと思い一念発起して行動を起こし、半年の間に月収を3倍以上あげることに成功しました。自分言ってて胡散臭い話ですが、実体験です。 キャリア向上を目指した行動の中には、意識し ...

続きを読む

エンジニア独立

2019/5/29

転職したいエンジニアの背中を押す記事

知人であったり、SNS上で知り合いのエンジニアの中には、今の職場に不満を感じ、転職したいという思いを募らせている人が結構な割合います。 僕からしたら絶賛売り手市場であるエンジニア業界において、劣悪な労働環境に耐えるという選択は非常に勿体無いことだと考えています。 確かにIT業界における技術者というのは、非常に需要のある立場ですが、慎重に働く場所を選ばなければ搾取される可能性が高いです。 技術という武器を持っているエンジニアならば、ストレスなく効率よく働くべき場所を求めて行動を起こすべきだと思うんですよね。 ...

続きを読む

エンジニア入門

2018/8/19

プログラミング初心者にRubyを強くオススメする理由

こんにちは、フリーエンジニアのてぃすです。 プログラミングを始めようと思った時にまず立ちはだかるのが、 どのプログラミング言語を選択するか という問題です。 Googleで『プログラミング おすすめ』や『プログラミング 初心者』などと調べてみても、 オススメプログラミング言語○選といった類の記事やサイトばかりで 結局何を勉強すればいいの? となってしまっていることでしょう。 そこで今回は、現在プログラマーとして働いている私から、これからプログラムを勉強したいという方に向け、国産プログラミング言語であるRu ...

続きを読む

エンジニア独立

2019/5/29

パーソルテクノロジースタッフの派遣でエンジニア歴2年の僕が時給2000円を余裕で超えた話

今いる会社を辞めることとなり、今後のエンジニアとしての身の振りを検討中のてぃすです。 今回とある派遣会社にて、業務経験なしのRuby on Railsの案件を紹介してもらい、その時給が2000円を超えていました。 月給換算したら1,2年目の正社員の給与を余裕で超えてきます。派遣という働き方の印象がガラッと変わる体験をしました。 今回はエンジニア歴2年の僕にそんな素敵な待遇を提供してくれたパーソルテクノロジースタッフについて、実体験を交えて語っていこうと思います。 エンジニア派遣の「パーソルテクノロジースタ ...

続きを読む

-プログラミング
-,

Copyright© TIS ENGINEER NOTE , 2019 All Rights Reserved Powered by AFFINGER5.