CMakeLists.txtの再帰的検索とサブディレクトリの追加

はじめに CMakeを使用したプロジェクトのビルド設定では、CMakeLists.txtファイルを用いてプロジェクト構成を定義する。特に、大規模なプロジェクトや階層構造が深いプロジェクトの場合、カレントディレクトリとそのサブディレクトリ内にあるすべてのCMakeLi…

シェルスクリプト `if [ -s hoge.txt ]; then` の意味

疑問 下記のシェルスクリプトに出会ったが意味がわからなかったので調査しました。 if [ -s hoge.txt ]; then rm hoge.txt fi 調査結果 このシェルスクリプトは、hoge.txt というファイルが存在し、かつサイズが0より大きい(空でない)場合に、そのファイル…

command > /dev/null 2>&1 の意味

疑問 シェルスクリプトで下記のような記述に出会ったのでなんのことか調べてみた。 command > /dev/null 2>&1 # command は任意のコマンドのこと 調べた結果 Linuxコマンドので任意のcommandを実行し、その際の標準出力と標準エラー出力を捨てることを意味し…

ExcelVBAでQA表テンプレートを自動作成

VBA

作るもの マクロコード抜粋 感想 改訂履歴 作るもの こんな感じのQA表テンプレートを作るためのマクロを実装 QA表シート pulldown用のシート マクロコード抜粋 Sub QA表作成() Dim NewSheet As Worksheet Dim ActiveSheetIndex As Long ' アクティブシートの…

シェルワンライナー160本ノック: 問題3

問題 下記コマンドで100万個ファイルを作る $ mkdir ./tmp $ cd ./tmp $ seq 1000000 | xargs -P 2 touch このファイルを先頭に0つけて7桁のファイルにするようにする 答え $ time ls -U | xargs -P2 rename 's/^/0000000/;s/0*([0-9]{7})/$1/' 解説 まず re…

イギリス旅行

イギリス旅行にいきました ※まずは、脳みそのことを吐き出します。 ※気が向いたら、写真やらをつけながら校正するかもです。 はじめに 2023/02/16 - 2023/02/23の期間でイギリス旅行へいった。 転職に伴う有休消化のため、行くしか無い。ということで。 雑多…

Cコンパイラ作成入門のメモ #8 (Step11)

はじめに Commit Step11 調べたこと・理解したこと トークナイズ結果出力用関数の実装 イメージ図/コード メモ 参考 思ったこと パーサの実装について returnの右側をlhsとしてノードに格納しているところ パーサの文法と、コードの実装の対応 まとめ図 テキ…

Cコンパイラ作成入門のメモ #7 (Step10)

はじめに Commit Step10 調べたこと・理解したこと ローカル変数管理用の連結リスト周りについて イメージ図 思ったこと はじめに こちらをやってみたときのメモを書いていく。 www.sigbus.info 今回はStep10 Commit Step10 github.com 調べたこと・理解した…

Cコンパイラ作成入門のメモ #6 (Step9)

はじめに Commit Step9 調べたこと、理解したこと データ構造の流れ イメージ図 メモ 参考 NodeとCodegen実装の対応を理解 イメージ図 メモ 参考 スタックの伸びる方向について イメージ図 メモ 参考 consume_ident() の実装について コード メモ 参考 『for…

Cコンパイラ作成入門のメモ #5 (Step8)

はじめに Commit Step8 調べたこと make コード 実行されるコマンド 理解したこと Makefileの前提知識 なぜこのMakefileでこのコマンドが実行されるのか コンパイルオプション ルールを分解して考える 変数 流れ その他 思ったこと はじめに こちらをやって…

Cコンパイラ作成入門のメモ #4 (Step6, 7)

はじめに Commit Step6 Step7 調べたこと startswith コード 詳細 参考 思ったこと はじめに こちらをやってみたときのメモを書いていく。 www.sigbus.info 今回はStep6, 7 Commit Step6 https://github.com/lvlnaga/9cc/commit/0dd18e522522b32fd049d74d5fd…

Cコンパイラ作成入門のメモ #3 (Step4, 5)

はじめに 調べたこと 関数のプロトタイプ宣言について 参考 空returnについて 参考 strchr を使って特定文字有無のif文 参考 思ったこと マインドマップに書きながら理解 再帰的な処理について 説明の流れについて はじめに こちらをやってみたときのメモを…

Cコンパイラ作成入門のメモ #2 (Step2,3)

はじめに 調べたこと 連結リスト 参考 tokenizeのところ詳細 (1)について (2)について 参考 可変個引数、動的引数 (...)について はじめに こちらをやってみたときのメモを書いていく。 www.sigbus.info 今回はStep3まで commitはこちら tokenizerにより空白…

Cコンパイラ作成入門のメモ #1

はじめに 調べたこと パッケージ準備 シェルスクリプト Makefile 思ったこと はじめに こちらをやってみたときのメモを書いていく。 www.sigbus.info 今回はStep1まで 調べたこと パッケージ準備 下記を実行した $ sudo apt update $ sudo apt install -y gc…