C# DotNet v3.0.100 インストール
preview
版でなく正式版っぽい。
手順
- ダウンロードする
- 保存先ディレクトリを作る(
mkdir -p ...
) - 展開する(
tar zxf dotnet-sdk-3.0.100-linux-arm.tar.gz
) - 環境変数
PATH
に追記する(export ...
)
シェルスクリプトにすると以下。
DOTNET_CLI_TELEMETRY_OPTOUT=1 ARCHIVE_FILE=dotnet-sdk-3.0.100-linux-arm.tar.gz wget https://download.visualstudio.microsoft.com/download/pr/8ddb8193-f88c-4c4b-82a3-39fcced27e91/b8e0b9bf4cf77dff09ff86cc1a73960b/$ARCHIVE_FILE DIR_DOTNET=/home/pi/root/sys/env/sdk/.NETCore/3.0.100 mkdir -p "$DIR_DOTNET" cd "$DIR_DOTNET" tar zxf ARCHIVE_FILE export DOTNET_ROOT=$DIR_DOTNET export PATH=$PATH:$DIR_DOTNET
DOTNET_CLI_TELEMETRY_OPTOUT=1
については次回DotNetコマンドで情報漏洩を強いられる件(テレメトリ詐欺)で説明する
環境変数の常時登録
~/.bashrc
DOTNET_CLI_TELEMETRY_OPTOUT=1 export DOTNET_ROOT=$HOME/root/sys/env/sdk/.NETCore/3.0.100 export PATH=$PATH:$DIR_DOTNET
~/.bashrc
に追記する。これでターミナルが起動するたびに環境変数が設定される。さもなくば毎回export ...
を要する。
DOTNET_CLI_TELEMETRY_OPTOUT=1
については次回DotNetコマンドで情報漏洩を強いられる件(テレメトリ詐欺)で説明する
確認
バージョン
dotnet --version
3.0.100
成功!
ヘルプ
$ dotnet --help .NET Core SDK (3.0.100) 使用法: dotnet [runtime-options] [path-to-application] [arguments] .NET Core アプリケーションを実行します。 runtime-options: --additionalprobingpath <path> 調査ポリシーと調査対象アセンブリを含むパス。 --additional-deps <path> 追加の deps.json ファイルへのパス。 --fx-version <version> アプリケーションを実行するために使用するインストール済み Shared Framework のバージョン。 --roll-forward <setting> フレームワーク バージョン (LatestPatch、Minor、LatestMinor、Major、LatestMajor、Disable) にロールフォワードします。 path-to-application: 実行するアプリケーション .dll ファイルへのパス。 使用法: dotnet [sdk-options] [command] [command-options] [arguments] .NET Core SDK コマンドを実行します。 sdk-options: -d|--diagnostics 診断出力を有効にします。 -h|--help コマンド ラインのヘルプを表示します。 --info .NET Core 情報を表示します。 --list-runtimes インストール済みランタイムを表示します。 --list-sdks インストール済み SDK を表示します。 --version 使用中の .NET Core SDK バージョンを表示します。 SDK コマンド: add .NET プロジェクトにパッケージまたは参照を追加します。 build .NET プロジェクトをビルドします。 build-server ビルドによって開始されたサーバーとやり取りします。 clean .NET プロジェクトのビルド出力をクリーンします。 help コマンド ラインのヘルプを表示します。 list .NET プロジェクトのプロジェクト参照を一覧表示します。 msbuild Microsoft Build Engine (MSBuild) コマンドを実行します。 new 新しい .NET プロジェクトまたはファイルを作成します。 nuget 追加の NuGet コマンドを提供します。 pack NuGet パッケージを作成します。 publish .NET プロジェクトを配置のために発行します。 remove .NET プロジェクトからパッケージまたは参照を削除します。 restore .NET プロジェクトに指定されている依存関係を復元します。 run .NET プロジェクトの出力をビルドして実行します。 sln Visual Studio ソリューション ファイルを変更します。 store 指定されたアセンブリをランタイム パッケージ ストアに格納します。 test .NET プロジェクトに指定されているテスト ランナーを使用して、単体テストを実行します。 tool .NET のエクスペリエンスを向上するツールをインストールまたは管理します。 vstest Microsoft Test Engine (VSTest) コマンドを実行します。 バンドルされたツールからの追加コマンド: dev-certs 開発証明書を作成し、管理します。 fsi F# Interactive を開始するか、F# スクリプトを実行します。 sql-cache SQL Server キャッシュ コマンドライン ツール。 user-secrets 開発ユーザーのシークレットを管理します。 watch ファイルが変更されたときにコマンドを実行するファイル ウォッチャーを起動します。 コマンドに関する詳細情報については、'dotnet [command] --help' を実行します。
日本語化されている。
失敗ログ
失敗ログ
情報源
手順(失敗)
Microsoftキーとフィードを登録する
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/ wget -q https://packages.microsoft.com/config/debian/10/prod.list sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
.NET SDKをインストールする
sudo apt-get update
sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install dotnet-sdk-3.0
dotnet-sdk-3.0
が存在しない……。
$ sudo apt install dotnet-sdk-3.0 パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 E: パッケージ dotnet-sdk-3.0 が見つかりません E: 'dotnet-sdk-3.0' に一致するパッケージは見つかりませんでした E: 正規表現 'dotnet-sdk-3.0' ではパッケージは見つかりませんでした
x64
以外はここでダウンロードするらしい。RPI3B+はARM32
に相当する。
環境による差をユーザが解読せねばならない苦痛よ。ソースからビルドできるようにしてくれ。オープンソース詐欺か。
前回まで
まだバージョンがpreview
だった頃。v3
になってもpreview 7
とかだったはず。しばらく放置していたが、いつの間にやら正式版になったっぽい。たしかこれからはMONO
, .NET Framework
, DotNet
が統合されてDotNet 5
になるんだっけ? この記事が公開されている頃にはさらに先へ進んでいるのだろう。
対象環境
- Raspbierry pi 3 Model B+
- Raspbian stretch 9.0 2018-11-13
- bash 4.4.12(1)-release
$ uname -a Linux raspberrypi 4.19.42-v7+ #1218 SMP Tue May 14 00:48:17 BST 2019 armv7l GNU/Linux