はしくれエンジニアもどきのメモ

情報系技術・哲学・デザインなどの勉強メモ・備忘録です。

Mesonの使い方メモ

Mesonの使い方メモ

Mesonの情報無さすぎるということでメモ。 触ってみた所感としてcmakeより楽なんだろうけど、どのbuitinオプションがどの引数を制御してるかなどがわかりにくい.. (ver0.61なので今後変わりそうですが)

The Meson Build system

mesonではビルド方法を2種類に分けている

  • native build: build machineとhost/target machineが同じ
  • cross build: build machineとhost/target machineが別

今回はnative buildを中心にまとめる。

環境・事前準備

今回はDocker上にMesonをインストールした状況を想定してる。 Mesonはpipからインストールできる。

$ pip3 install meson
  • Windows10 64bit
    • WSL2
    • DockerDesktop 4.5.1 (74721)
      • base image: Debian 11
        • Meson 0.61.2

続きを読む

はてなブログでmermaidの図を描く

はてなブログでmermaidの図を描く

Githubでもサポートされたmermaidをはてなブログでも描けないか試したところ多少なんとかなったのでメモ。

 ```mermaid
graph TB
  H["Hatenaで"]
  M["mermaid"]
  H-->M
 ```

👇上のmarkdownコードがこうなる

graph TB
  H["Hatenaで"]
  M["mermaid"]
  H-->M

続きを読む

emscriptenでよくみるoption-flagをまとめる

emscriptenでよくみるoption-flagをまとめる

emcc --helpしても出てこないオプション(e.g. clang由来のものとか)もあってよくわからんとなったのでメモ。

環境・事前準備

今回はDocker上にemscriptenをインストールした状況を想定してる。

  • Windows10 64bit
    • WSL2
    • DockerDesktop 4.5.1 (74721)

続きを読む

DockerでExited(139)が出たときの対処

DockerでExited(139)が出たときの対処

doker runしたときにコンテナが立ち上がらずExited(139)で終了してしまうときの対処メモ。

この終了コードはDocker Desktop上でも確認できる。

f:id:cartman0:20220307003209p:plain
Exited(139)

環境・事前準備

  • Windows10 64bit
    • WSL2
    • DockerDesktop 4.5.1 (74721)

続きを読む

Docker+VSCodeのRust環境を作る

Docker+VSCodeのRust環境を作る

RustがCとPythonの間(C寄り)の中級型言語でCより書きやすく速度はCと大差ないらしいということで、触りたくなったのでWindowsでの環境構築を調べたメモ。

GUIアプリを作るようなケースでなければ以下の方法で問題ないはず。

  • .devcontainerを使わない方法(1ファイルのみのコンパイル・実行なら可能)
  • .devcontainerを使う方法(ワークスペース・パッケージ単位のビルド、1パッケージのデバッグ、補完やらが可能。基本的にはこっち)

環境・事前準備

VSCode(+拡張機能RemoteContainer)とDockerDesktopはインストール済みを想定

続きを読む

Jupyter上にGraphvizの図をSVGで描画する

Jupyter上にGraphvizの図をSVGで描画する

Jupyter上にGraphviz(.dot)の図をSVGで描画することに成功したのでメモとして残す。(※拡張機能としてはまだ作れていない)

Viz.jsのおかげでJavaのインストールすら不要になった..!

dotファイルのコードを書いてあげればこうなる👇

f:id:cartman0:20220211190623p:plain
jupyter上にGraphvizの図を描画

gist上では表示されないがnbviewerを通せば図も表示される。

https://nbviewer.org/gist/Cartman0/5a7cfadc2f367869f2df506577ace525

また、IPythonのカーネル周りの挙動もドキュメントがなく分かりづらいのメモとして残す。

試した環境

DockerDesktopはインストール済みを想定

  • Windows10 64bit
    • DockerDesktop 4.4
      • scipy-notebook Image

続きを読む

畳み込み積分は結局何を計算してるのかメモ

畳み込み積分は結局何を計算してるのかメモ

畳み込み積分フーリエラプラス変換で周波数領域にすると積の形にできて便利だよねくらい雑に理解してたので、 時間領域でどんな計算してるのかメモとして残す。

この記事で出てくる式や図はgistにまとめている。

convolution_integral.ipynb · GitHub

続きを読む

はてなブログのコードブロックのcssスタイルを変更する

はてなブログのコードブロックのcssスタイルを変更する

はてなブログのコードブロックのスタイル変更時のメモ。

  • 色などのスタイル変更
  • 言語名の追加

を中心にまとめる。 はてなブログの場合、意外に行数表示はCSSだけではタグ構造上無理でJSが必要になりそうなので gistやcodepenみたいなサービスの埋め込み使うのもありかも。

続きを読む

伊勢田哲治「哲学的思考トレーニング」の感想とメモ

伊勢田哲治「哲学的思考トレーニング」の感想とメモ

伊勢田哲治先生の「哲学的思考トレーニング」(2005)を読んだので感想とメモを残す。

などが分かる本で、 文系学生に限らずみな読んでおいたほうがいい本である.

続きを読む

ドット絵で30°の斜線を引くには

ドット絵で30度の斜線を引くには

ドット絵で中途半端な角度の斜線を引くための計算メモ. 数学的に考えると,極座標系のグリッド化問題になる?

結論からいくと,

  • 単純に30度を引くには,「2,2,1,...」の周期並びで問題ない. arctan 3/5 ≒ 31度になる.+1度の誤差が発生するが,ジャギ消し分含めるとあまり問題ないはず
  • 画像サイズが大きくもっと精度良くしたい場合には,『「2,1,...」の周期並べx4,「2,2,...」の均等並べx13, 「2,1,...」の周期並べx4』の周期並べが良さげ. arctan 58/100 ≒ 30.1度で+0.1度まで誤差を抑えられる.でもジャギ消しで見え方変わるのでここまでこだわる必要があるかはなんとも言えない.

f:id:cartman0:20211007220039j:plain
30°の表現2パターン

環境

  • Windows10 64bit
    • edge 1.29b

続きを読む