Ubuntuに入れた.NET Coreでプロジェクトを作って実行する
前回、Ubuntuに.NET Coreをインストールするところまで行ったので、今回はプロジェクトの作り方と動かし方についてです。
プロジェクトの作り方
VisualStudioCodeで[Ctrl]+[Shift]+[@]を押してコンソール画面を開きます。
cdコマンドでプロジェクトを作成したい階層まで移動し、以下のコマンドを実行します。
$ dotnet new console -o Sample1(プロジェクト名)
コマンドを実行した階層にプロジェクトが作成されます。
コードを書く
作成したプロジェクトの階層をVisualStudioCodeで開き、コードをゴリゴリと作成します。
実行の方法
VisualStudioCodeで[Ctrl]+[Shift]+[@]を押してコンソール画面を開きます。
プロジェクトの第一階層にcdコマンドで移動し、以下のコマンドを実行すると、 プログラムがコンパイルされ、実行されます。
$ dotnet run
ubuntuにC#の開発環境を作る
先日Chromebook C302にubuntuをインストールして、無事に使えるところまで行けたので、 C#を書いて実行できる環境を作っていきます。
今回試した方法は以下の2つです。
- MonoDevelopをインストールして開発をする
- VisualStudioCodeでコードを書いて.NET Coreで動かす
好みによりますが、自分はVisualStudioCodeのほうが使いやすく思いました。
今回どちらも実施したので、両方の手順を残しておきます。
monodevelopをインストールする
以下の記事に従い、ターミナルをカタカタしてMonoDevelopをインストールします。 Download | MonoDevelop
$ sudo apt install apt-transport-https dirmngr $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF $ echo "deb https://download.mono-project.com/repo/ubuntu vs-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-vs.list $ sudo apt update $ sudo apt-get install monodevelop
上記コマンドを実行することで、アプリ一覧にmonodevelopが追加されます。
あとはMonoDevelopを立ち上げてゴリゴリコードを書いていくだけです。
VisualStudioCodeをインストールする
MonoDevelopで不満なくコードを書いて動かすことはできるのですが、 個人的にエディタが見づらく感じたので、VisualStudioCodeを入れることにしました。
以下のサイトからインストーラを落とします Visual Studio Code - Code Editing. Redefined
サイトに飛んだら、ubuntuの場合は".deb"を選んでインストールします。
インストールが完了したら、VisualStudioCodeからC#の拡張機能をインストールします。
.NET Coreをインストールする
VisualStudioCodeをインストールしたことで、コードを書けるようになりましたが、まだ実行することができません。 C#で書いたコードを実行するために.NET Coreをインストールします。
以下のサイトを参考にします。
Install .NET Core SDK on Linux Ubuntu 18.04 x64 | .NET
上記のサイトを参考に、以下のコマンドを実行します
wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb
上記コマンドを実行すると、「既にそのパッケージあるよ!」とubuntuに怒られましたが、気にせず進んでいきます。
以下のコマンドを実行します
sudo add-apt-repository universe sudo apt-get install apt-transport-https sudo apt-get update sudo apt-get install dotnet-sdk-2.2
上記のコマンドが入力できたら、次のコマンドを入力してみます。
dotnet --version
上記のコマンドを実行して、インストールした.NET Coreのバージョンが表示されたら、インストール成功です。
Chromebook C302CAに、chrxを使用してubuntuをインストールする
前回、chrxを使用してGalliumOSをインストールしてみましたが、色々と思うように動かない部分もありました。 試しにubuntuをインストールしてみたらところ、なかなかいい感じに動作したので、インストール方法を記録しておきます
参考にしたサイト
ChromebookにGalliumOSをインストールする方法
GalliumOS on Chromebook Flip C302CA (1) - appriver’s diary
Ubuntu 16.04 LTS のキーボードを日本語 (JIS) に変更する - CUBE SUGAR CONTAINER
事前準備
前回の記事で事前準備を行っていれば今回は不要です。 まだ行っていない場合は前回の記事を参考に事前準備を行います。
事前準備が完了していれば、下記の操作を行って、Ubuntuをインストールします
Ubuntuのインストール手順
コンソール画面を開く
Chromebookを起動してログイン画面で[Ctrl]+[Alt]+[→(進む)]キーを押して、コンソール画面を開く
コンソール画面が開いたら、「chronos」と入力してログインをする
Ubuntuのインストール
下記のコマンドを実行する
$ curl -Os https://chrx.org/go && sh go -d ubuntu -H ホスト名 -U ユーザ名
ダウンロードとインストールが実行される。20分くらい
インストールが完了したメッセージが表示されたら、[Enter]を押して再起動する
Ubuntuの起動
起動直後のOSの確認画面にて、[Ctrl]+[L]を入力してUbuntuを起動する
ログイン画面が表示されたら、インストール時に設定したユーザ名と、ユーザ名と同様のパスワードを入力してログインする
ここでうまく起動しない場合は、上記のインストール手順を再度繰り返す
Ubuntuを日本語化する
以下のコマンドを実行する
$ sudo apt-get install language-pack-ja $ sudo apt-get install ibus-mozc $ sudo update-locale LANG=ja_JP.UTF-8
インストールが終わったら、左下のメニューから「Language Support」を開き、残りの日本語パックをインストールする
インストールが完了したら再起動して適応させる
IMEにMozcを設定する
Menu > Settings > Region & Language > Input Sources
"+"ボタンを押して、 Japanese > Japanese (Mozc)
を選択する
Englishを選択して"-"ボタンを押して削除する
キーボードの配列をJISにする
インストールしたままだと、キーボードがUS配列として認識されるため、以下のコマンドを入力してJIS配列に設定し直す
$ sudo dpkg-reconfigure keyboard-configuration Generic 104-key > 日本語 > 日本語 > The default for the keyboard layout > No compose key
再起動してもキーボードがUSに戻らないようにする
上記の設定のみだと再起動したときにキーボードがUS設定に戻ってしまうので、再起動してもJISキーボードとして認識するようにする
参考:Ubuntu日本語フォーラム / キーボードレイアウトを設定してもすぐに戻ってしまう
/usr/share/ibus/component/mozc.xml
<layout>○○<layout>
→<layout>jp</layout>
/etc/default/keyboard
XKBMODEL=◯◯
→XKBMODEL="pc105"
XKBLAYOUT=◯◯
→XKBLAYOUT="jp,jp"
パスワードを変更する
初期のパスワードではユーザ名とパスワードが同じなので、変更する
以下を編集する
Menu > Settings > Details > Users > Password
タイムゾーンを設定する
Menu > Settings > Details > Date & Time > Time Zone > JST (Tokyo, Japan)
ほぼセットアップ完了
上記の手順で、一通り使える状態になるはず。 抜けている手順などありましたら、随時追記していきます。
chromebook C302CAにGalliumOSをインストールする
手持ちのChromebook C302CAにC#の開発環境を構築したかったので、chrxを使用してGalliumOSをインストールすることにした。
参考にしたサイト
ChromebookにGalliumOSをインストールする方法
GalliumOS on Chromebook Flip C302CA (1) - appriver’s diary
Ubuntu 16.04 LTS のキーボードを日本語 (JIS) に変更する - CUBE SUGAR CONTAINER
事前準備
- Chromebookのリカバリディスクを作成する
- デベロッパーモードへ移行しておく
GalliumOSのインストール手順
コンソール画面を開く
Chromebookを起動してログイン画面で[Ctrl]+[Alt]+[→(進む)]キーを押して、コンソール画面を開く
コンソール画面が開いたら、「chronos」と入力してログインをする
パーティションを分割する
以下のコマンドを実行する
$ curl -Os https://chrx.org/go && sh go -d galliumos -H ホスト名 -U ユーザ名 -Z Asia/Tokyo -L ja_JP.UTF-8
パーティションの分割サイズを聞いてくるので、「32」と入力して[Enter]を押す
パーティションの分割が完了したメッセージが表示されたら、[Enter]を押して再起動をする
GalliumOSのインストール
ChromeOSにログインをして、ネットワーク設定を済ませ、ログアウトする
[Ctrl]+[Alt]+[→(進む)}キーを押して、コンソール画面を開き、再度以下のコマンドを入力する
$ curl -Os https://chrx.org/go && sh go -d galliumos -H ホスト名 -U ユーザ名 -Z Asia/Tokyo -L ja_JP.UTF-8
ダウンロードとインストールが実行される。1時間〜1時間半くらい
インストールが完了したメッセージが表示されたら、[Enter]を押して再起動する
GalliumOSの起動
起動直後のOSの確認画面にて、[Ctrl]+[L]を入力してGalliumOSを起動する
ログイン画面が表示されたら、インストール時に設定したユーザ名と、ユーザ名と同様のパスワードを入力してログインする
GalliumOSを日本語化する
インストール時に日本語を指定しているので元から日本語化されているが、念の為以下を実行しておく
$ sudo apt-get install language-pack-ja $ sudo apt-get install ibus-mozc $ sudo update-locale LANG=ja_JP.UTF-8
インストールが終わったら、左下のメニューから「言語サポート」を開き、残りの日本語パックをインストールする
インストールが完了したら再起動して適応させる
IMEにMozcを設定する
左下のメニューで「ibus」と検索し、「キーボード・インプットメソッドを開く」
「入力メソッド」の中に[Mozc]を追加し、その他のIMEを削除する
キーボードの配列をJISにする
インストールしたままだと、キーボードがUS配列として認識されるため、以下のコマンドを入力してJIS配列に設定し直す
$ sudo dpkg-reconfigure keyboard-configuration
Generic 104-key > 日本語 > 日本語 > The default for the keyboard layout > No compose key
パスワードを変更する
初期のパスワードではユーザ名とパスワードが同じなので、変更する
sudo passwd ****
※”****”の部分には新しいパスワードを入れる
残りの課題
ここまで設定して、あと気になるのは以下の2つ
- 右下に表示されている時計が9時間ずれている(UTC表示になっている)
- キーボードの「かな」と「英数」キーが正しく動かない
解決策が見つかったらブログに追記していきます
ブログを作りました
昨日、Chromebook C302CAにGalliumOSをインストールしているときに、「これは手順をどこかに残しておかないと二度とできないな」と思ったので、その記録を残すためにブログを作成しました。
Linuxの環境構築の記録やプログラミングなどなど、自分のノート代わりに書いていこうと思います。
基本的に、当分は見やすさには考慮しない予定です。
自分のノート代わりなので、自分がわかればいいようにまとめていく予定。
ひとまず、今日はブログを作成するところまでできたようなので、本日の目標は完了です。