« PocketBeagleインストール方法 | トップページ | react-app作成メモ »

2018年7月14日 (土)

PocketBeagleでのC#(mono)インストールメモ

以下、PocketBeagleをホストPC(linux)にUSB接続して
sshでログインしたあとの説明。
#Internet-over-USBの設定は完了している前提

1.mono install
sudo apt-get update
sudo apt-get mono-complete
sudo apt-get install libgdiplus
sudo apt-get install gtk-sharp3
#以下、不要かもしれない
sudo apt-get install libgtk-3-dev

2.NuGet install
# Download the latest stable `nuget.exe` to `/usr/local/bin`
sudo curl -o /usr/local/bin/nuget.exe https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
# Create as alias for nuget
alias nuget="mono /usr/local/bin/nuget.exe"

#動作確認、以下を実行してpackage候補が表示されればOK
debian@beaglebone:~/mono_ws$ nuget list osc
Bespoke-OSC-Library 1.0.0
Bonsai.Osc.Design 2.3.0
Bonsai.Osc 2.3.0
Osc.Dejection 1.1.16289.2
IsraelHiking.OsmCTools 0.8.0
OpenStackClient 1.0.0
OSCforPCL 0.0.3
Rug.Osc 1.2.5
x32dotnet 1.0.0.5
debian@beaglebone:~/mono_ws$

3.以下のsampleプログラムをダウンロードして解凍する。
「PocketBeagleCS.zip」をダウンロード

4.コンパイル&実行の確認
mcs hello.cs
mono hello.exe

mcs helloWin.cs -pkg:dotnet
mono helloWin.exe

mcs helloGtk.cs -pkg:gtk-sharp-3.0
mono helloGtk.exe

mcs GoogleExample.cs /r:System.Web.dll
mono GoogleExample.exe

5.OSC(OpenSoundControl)プログラムのコンパイルと実行
(1)OSCライブラリーのインストール
以下を実行する:
nuget install Rug.OSC
...
...
Installing Rug.Osc 1.2.5.
Adding package 'Rug.Osc.1.2.5' to folder '/home/debian/mono_ws'
Added package 'Rug.Osc.1.2.5' to folder '/home/debian/mono_ws'
Successfully installed 'Rug.Osc 1.2.5' to /home/debian/mono_ws
Executing nuget actions took 4.69 sec

パス設定を省略しているので以下を実行して
必要なdllをexeと同じディレクトリに置く:
cp Rug.Osc.1.2.5/lib/Rug.Osc.dll .

(2)コンパイル&実行(その1)
mcs OSC_Receiver.cs /r:Rug.Osc.dll
mono OSC_Receiver.exe

# OSC_Receiver.csのソースを使用する(ホストの外からの)受信ポートに合わせて変更すること
# iPhoneアプリのTouchOSCを相手に想定していて、
# TouchOSCのfaderなどを動かすと受信したデータがコンソール上に表示される。

注意:
「mono OSC_Receiver.exe」を動かす際は、ホストからPocketBeagleにパケットを
流すたために、ホスト側で以下のプログラムを実行する。(ダウンロードしたzipに入っている)
node UDPbridge.js

(3)実行例

(4)コンパイル&実行(その2)
mcs OSC_Sender.cs /r:Rug.Osc.dll
mono OSC_Sender.exe

# OSC_Sender.csのソースを使用するIPとポートに合わせて変更すること
# iPhoneアプリのTouchOSCを相手に想定していて、上手く動作すれば
# fader1が自動的に上下する。

6.C#のREPL
(1)実行例
debian@beaglebone:~/mono_ws$ csharp
Mono C# Shell, type "help;" for help

Enter statements below.
csharp> DateTime.Now
7/14/2018 9:03:34 PM
csharp> var a=45*3
csharp> a
135
csharp>


7.Reference
https://docs.microsoft.com/ja-jp/nuget/install-nuget-client-tools#nugetexe-cli
https://bitbucket.org/rugcode/rug.osc


以上


|

« PocketBeagleインストール方法 | トップページ | react-app作成メモ »

パソコン・インターネット」カテゴリの記事

linux」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: PocketBeagleでのC#(mono)インストールメモ:

« PocketBeagleインストール方法 | トップページ | react-app作成メモ »