TIS ENGINEER NOTE

27才文系出身フリーランスエンジニアのブログ

プログラミング

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

更新日:

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

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

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

Go言語(golang)とは何か

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

特徴としては

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

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

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

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

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

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

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

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

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

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

公式からダウンロード

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

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

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

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

パスの設定

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

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

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

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

インストールの確認

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

補足①:パスの変更

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

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

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

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

apt-cache showpkg golang

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

テストソースの作成

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

Goファイルの作成

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

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

ビルド&実行

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

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

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

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

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

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

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

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

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

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

よく読まれている記事

エンジニア入門

2018/8/17

現役エンジニアからみたProEngineerの『エンジニアカレッジ』について

こんにちは、フリーエンジニアのてぃすです。 最近、 どうすればエンジニアになれるのか エンジニアになるためにどんな勉強をしたの? といった質問を受けることが多くなってきました。 エンジニアは高稼働のブラック職業であるという印象も薄れてきて、効率よく稼げる職業としての側面に気付き始めた方が増えてきたということでしょう。 とはいえ全くの未経験からITエンジニアに転向するというのは独学の場合、不可能ではありませんが、かなり難易度の高い挑戦であると言えます。たとえ独学で成し遂げたとしても、よっぽど運がよくない限り ...

続きを読む

エンジニア入門

2018/8/19

本気でRubyを学びたい人のためのエンジニアスクール『ポテパンキャンプ』

こんにちは、フリーエンジニアのてぃすです。 エンジニアといえば今や最も少ない投資で高収入を望め、更には週3勤務やリモートワークなどの柔軟な働き方も目指せる夢のある職業です。 ここ最近は営業職や事務職から、将来性を考えてエンジニアに転身するといういう人もかなり増えてきています。 特にRubyプログラマーは日本における絶大な需要とリモート案件の豊富さから、特に人気のあるポジションとなっています。エンジニアとして働いているが、職場環境に不満を抱いていたり、今扱っている技術が今後通用するか不安に感じ、Ruby・W ...

続きを読む

エンジニア入門

2018/3/26

エンジニアは勉強し続けなければいけない職業なのか

こんにちは。フリーランスエンジニアのてぃすです。 最近は就職・転職する際にエンジニアを選択肢に含める人が増えてきています。 しかしエンジニアという職業を候補にあげるにあたって、 エンジニアは働きながら勉強し続けなければいけないのではないか? という疑問もよく見聞きします。 そこで今回はフリーランスエンジニアとして活動している僕の視点からこの疑問についての答えを説明していこうと思います。 結論 先に結論を述べると、 エンジニアは勉強し続けなければいけないのか? という疑問の答えはNOです。 決してエンジニア ...

続きを読む

エンジニア独立

2018/8/19

エンジニアがリモートワークをして感動したお話

こんにちは。フリーランスエンジニアのてぃすです。 僕はエンジニアとして活動する中で、メインで参加しているプロジェクト以外にもフルリモートでもう1つのプロジェクトにも参加しています。 今日は実際にリモートワークってどんなもんなのかについてお話していこうと思います。 前置き リモートワークの話題については各種メディア、ブログやSNSでも度々盛り上がっています。 通勤時間の短縮になる 通勤で使う体力を仕事にまわすことができる 家庭の事情などで外で働けない人も活躍することができる などのポジティブな捉え方もあれば ...

続きを読む

エンジニア独立

2018/10/9

プログラマー・エンジニアが情報発信をするべき2つの理由

こんにちは。フリーエンジニアのてぃすです。 プログラマー・ITエンジニアとして働いている人が、SNSやブログで積極的に技術的なTipsや働き方に関する考え方を発信しているのをよく見ると思います。 情報発信をしたことのない人からすると、なんでそんな一銭の得にもならない行為をやっているのか、という疑問も湧いてくるでしょう。 知っている人は知っていることですが、エンジニアにとって情報発信ってすごいメリットがある行為なんです。 そこで今日はプログラマー・ITエンジニアが今すぐにでも情報発信を始めるべき2つの理由を ...

続きを読む

-プログラミング
-,

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