Skip to content

sazae657/TonNurako2

Repository files navigation

トンヌラコ

<トンヌラコ>.NetでX/Motifをなんとかしようというバベルの塔<トンヌラコ>

ライセンスはOpenMotifに従いLGPLとします

VSS Build Status

ビルド

必要なもの

  • 広い心
  • .NET Core SDK 3.0+
  • OpenMotif 2.3+
  • Python 3.6.0+
  • GNU Make

ソースを取ってくる

% git clone https://github.com/sazae657/TonNurako2.git
% cd TonNurako

TonNurako.extremesportsのビルド準備

以下のシステムでは事前に準備が必要です

  • X11やMotifが一般的でない場所にインストールされている場合
  • 一部の不自由システムで検疫フォルダーにMotifが移動されてしまっている場合
  • msbuildを叩いたら PrePareExtremeSports もしくは BuildExtremeSports でエラーになった場合

該当しない場合はこの手順をすっ飛ばして構いません

手順詳細 1. 依存ライブラリーを自動検索させる場合 TonNurako/TonNurakoExで *make audio* を叩いてください
*AUDIO OK*と表示されれば成功です
```
% make audio
(中略)
-- AUDIO OK --
%
```
  1. パスを指定する場合

    TonNurako/TonNurakoEx/Config.mp3 を TonNurako/TonNurakoEx/Site.mp3にコピーしてパスを調整してください

    % cd TonNurakoEx
    % cp -i Config.mp3 Site.mp3
    % dtpad Site.mp3
    
  2. Config.mp3編集するのが面倒くさい場合

    TonNurako/TonNurakoEx/import.app フォルダー直下にX11とXmへのシンボリックリンクを作成してください

    # 例: Motifがウイルス並の扱いを受けて検疫フォルダーに移動されてしまっている不自由システムの場合
    
    % cd TonNurako/TonNurakoEx/import.app
    % ln -sv /Library/SystemMigration/History/Migration-{UUID}/QuarantineRoot/usr/include/X11 .
    % ln -sv /Library/SystemMigration/History/Migration-{UUID}/QuarantineRoot/usr/include/Xm .
    % ln -sv /Library/SystemMigration/History/Migration-{UUID}/QuarantineRoot/usr/lib .
    

ビルド出来る事の確認

% make clean all

トンヌラコ本体とデモのビルド

% dotnet build
---
% ls bin/Debug/netstandard2.1/*Ton*
 bin/netstandard2.1/Debug/TonNurako.dll
 bin/netstandard2.1/Debug/TonNurako.pdb
 bin/netstandard2.1/Debug/libTonNurako.extremesports
%

BSD系などで make がGNU Makeでない場合は環境変数 MAKE を設定して msbuild を実行してください

% env MAKE=gmake msbuild

デモの実行

% ./Demo/Widgets/bin/Debug/netcoreapp3.0/Widgets  

Visual Studio Codeがあればデバッグボタンから実行できます

トンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコ

ウインドウにボタンが出来るだけのサンプル

using TonNurako.Widgets;
using TonNurako.Widgets.Xm;

namespace Simple
{
    class Program : Window
    {
        public override void ShellCreated() {
            var button = new PushButton();
            button.LabelString = "TonNurako!!";
            this.Children.Add(button);
        }

        static void Main(string[] args) {
            TonNurako.Application.Run(
                new TonNurako.ApplicationContext(), new Program());
        }
    }
}

トンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコンヌラコ

About

トンヌラコッコトンヌラコ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published