make: docker: 許可がありません

UbuntuMakefileを使ってdocker tagの処理を行おうとしたところエラーが起きた

sudoでも解決できるが、ユーザはdockerグループに入っているのにおかしい・・・

解決策

docker tagの各コマンドのあとにセミコロンをつけたことで解消された

docker tag [SOURCE_IMAGE:TAG] [TARGET_IMAGE:TAG] ;

以下の参考で言われていたようなPATH名にdockerという名のディレクトリはなかったのだが・・・なぜ?

参考

stackoverflow.com

VyOSのキーボードレイアウト変更

VyOSのキーボードレイアウトを日本語用のレイアウトにしたいとき、↓の記事のようなset console keymapでは機能しなかった

orebibou.com

代わりにset system option keyboard-layout jp106を実行するとうまくいく

ただし最近のビルドからのようだ

www2.filewo.net

commitsaveを忘れずに

Visual Studio 2019でAviUtlプラグイン作成環境を作る場合

なんとなくのメモ、サンプルのプラグインを動かす分にはほとんど今までと変わらないはず

手順

  1. 「新しいプロジェクトの作成」あるいは「ファイル」→「新規作成」→「プロジェクト」
  2. 「dll」で検索すると「ダイナミック リンク ライブラリ(DLL)」が出るのでそれを選択
  3. 適当にプロジェクト名を設定し「作成」
  4. プロジェクト配下のソースフォルダにaviutl_plugin_sdk.zipを解凍したときのファイルをコピー(ここではfilter.h・video_filter.cpp・video_filter.defをコピー)
  5. ソリューションエクスプローラーから「ヘッダー ファイル」右クリック→「追加」→「既存の項目」からfilter.hを追加、同様に「ソース ファイル」にvideo_filter.cppを、リソースファイルにvideo_filter.defを追加

設定を変更する

  1. 「プロジェクト」→「プロパティ」からプロパティページを開く
  2. 「構成プロパティ」→「詳細」から「文字セット」を“設定なし”にする
  3. 「リンカ」→「全般」の出力ファイルの項にある$(TargetExt).aufとする*1
  4. 「リンカ」→「入力」から「追加の依存ファイル」にvfw32.libとmsacm32.libを追加

Releaseビルドにも同じように適用したい場合、プロパティの「構成」で「すべての構成」を選んでおきます。

デバッグしやすくする

  1. 「プロジェクト」→「プロパティ」→「構成プロパティ」→「デバッグ」から「コマンド」をaviutl.exe(までのパス名)にする
  2. 同じくプロパティから「ビルドイベント」→「ビルド後のイベント」の「コマンドライン」を次のようにする
copy $(TargetDir)$(TargetName).auf <aviutl.exeが存在するフォルダのパス名>$(TargetName).auf

デバッグの際はAviUtlを終了するなどしてデバッグをやめることができます。

ソースコードを修正する

このままではビルドに通らないのでfilter.hのFILTER_DLL構造体を修正し、メンバのTCHAR型をすべてconst TCHAR型とします。

参照

AviUtlのプラグインフィルタをデバッグ

Diary 2005-1

[Q&A] AviUtlのプラグインを自作したい - Qiita

*1:.aufはプラグインフィルタ用拡張子なのでプラグインの種類に応じて.auiや.aucなどにする