Month: January 2023

サイトを移行しました

こんにちは。RockinWoolです。タイトルの通り、これまでGithubPages+Hugoで構築していたサイトをロリポップ+WordPressへ移行してみました。正直難易度はGithubPagesでやっていた頃のほうが高かったので、今はだいぶ楽に感じます。一方でカスタマイズ性が高いので、よりよいサイトにしていくためには勉強が必要だなと感じました。約一年ぶりの更新(なぜかubuntuからhugoで生成したサイトをGitHubPagesへ反映できないバグがあったため)になりましたが、今後ともよろしくお願いします。次回は書き溜めていたYoctoの話、Pythonの話、C++の話等を順番に書いて行こうと思います。まずはPythonかな・・。

ゼロ作OSその1&Atcoder2回目

2021/11/07こんばんは。RockinWoolです。 今日から適当にミカノス本を進めていこうと思います。 ちなみに、昨日の記事を投稿しようとしたら、見知らぬエラーが大量に出てきたためこの記事に習って解決しました。なお、これ以外にも他のテーマをgit submoduleに加えていたようで、こちらの記事を参考にsubmoduleを初期化して対応いたしました。 mikanosその1(p28~) ネタバレしないように感動した内容を語っていくと その後AWSにバイナリファイルチェック用環境を整えて行きました。 なお、ubutu20.04のイメージを使用しています。 Atcoder開始A問題 作業中にAtcoderが始まってしまったので、こちらも挑戦。 ところが、この作業中にローカルのWindowsPCにg++等が存在しないことが判明! 仕方がないので脳内コンパイラでA問題を解いてみました(AC) 四捨五入の関数とか知らなかったので愚直に実装。intにキャストすると切り捨てられることを想定して前もって0.5足しておけば良いのでは?となりAC。 AtcoderB問題 B問題は手元にpythonの実行環境ならばあったのでpyuthonで実装。 pythonならば同じ文字列でもset型でキャストしてしまえば統合されるので、簡単に実装できた。 ということで、今回はAtcoderのB問題まで溶けたところで終わりにします。 なお、次回はAWSにchrome remote desktop入れてQemuを動作させるところまで頑張ろうと思います。 ご閲覧ありがとうございます。

久しぶりにhugo環境を整えた話

2021年11月某日お久しぶりです。RockinWoolです。(本当に久しぶり過ぎて実名で挨拶しそうになりました。)今回は新たにゼロからのOS自作入門を購入したので、それをレビューしたいと思います・・・と行きたかったのですが、そもそもhugoでブログを描くのが久しぶりすぎたので、まずはhugoのセットアップ作業を実況していこうと思います。明日以降はOS自作入門の方もちゃんと進めていきます。 1. hugoの再インストール 何故かhugoがWindowsに入っていないというエラー文が表示されたため、再度セットアップ作業を行います。hugoのインストールに関してはこのサイトを参考にして進めました。なお、PATH設定後はVSCodeを再起動しないとターミナルに反映されない点に注意です(一敗)。 2. 新しい記事の投稿 新しい記事は以下のようなコマンドを入力して作成しました。 3. OS自作の準備(p28ハローワールド) この本ではLinuxを用いてOS自作を行うため、自分のWindows環境をそのまま使うとミスる可能性が高いかなと思いました。そこで、AWSのEC2で適当なUbuntu20.04の仮想マシンを作成して使ってしまおうと思ったのですが!なんと自分Windowsを久しぶりに起動して更新した関係で、モバイルWifiの3日で10GB制限を大幅に超えてしまっていて(19.8GB)通信制限がかかっており、まともに使えない!ということで本日はここまでにいたします。 また明日もがんばるぞー!!

C++とGRPC

2021/05/08こんにちは。RockinWoolです。最近外付けHDDの挙動がおかしかったので、もう一つ買ってきました。これで完璧。さて、今回はGRPC! と行きたいところです。ただ、そもそものC++周りの知識が全然無かったので、ひたすらそれを書いていこうかなという感じです。 まずは今回の目的であるgRPCの導入と、gRPCを使用する際に必要になるprotobufが使えるようにならないといけない。なので、そのあたりの環境構築からはじめる.参考2最初にcmakeのインストールを行う 次にgRPCのインストールを行う。まずはパス通しから .~bashrcにも追記する そして関連ツールのインストール そしてgRPCをクローンしてきてひたすらmakeする.ただし普通にビルドするとPCに負荷がかかり過ぎてフリーズすることがあった。そのため、cgroupで制約を課しながら、システムに余裕を持たせて実行すると良い。\ cgroup-toolsをインストールしたら、/etc/cgconfig.confを作成して、以下のように入力する 最後に設定を反映させたターミナルを起動する ターミナルが起動したら作業ディレクトリまで移動したのち、以下のコマンドを実行してビルドを行う 最後になぜかパーミッションがおかしい.pcファイルたちを移動しつつ権限を変更する それとPKG_CONFIG_PATHを指定しておかないと.pcファイルを読んでくれないので、これも指定する いちおうbashrcにも書いておく。 ここまでで、ようやくgrpcの作成環境が整えることができた。次はプログラミングである。ディレクトリ構成を以下のようにする このprotoディレクトリ内にrandom_walker.protoを用意する これを以下のコマンドでcppとhに変換する これで生成されるproto/random_walker.grpc.pb.hを見ると、134-140行目に関数の定義がされている

AWSのEC2に初チャレンジ

2021.04.26こんにちは。初心者プログラマのRockinWoolです。今日は有給を取って勉強をしていました。主にずっとやりたいと思っていたAWSでのPython実行について格闘し、結果として中々よい環境構築までいけました。頭の中に方法が残っている間にここにメモっておこうと思います。あと、昨日<ol>とかのhtml構文を記事に入れたのですが、どうやらhugoでは使えないみたいですね。残念です。 なお、.pemファイルの部分は絶対アドレスで記述するのだが、日本語ユーザなどでフォルダ名が「苗字スペース名前」等になっている場合、スペースが第二引数扱いになるらしくバグる。よしなにした方がよい(1敗) ざっとこのような手順でEC2にVScodeからつなぐことができる。ちょっと動かして見た感じ、ローカルのプログラムをEC2に移動する方法はGithub経由が楽でいいなと。その逆も然り。今後のAWS利用ですが、まずは時々動かしてみて何円かかるか測定してみようと思います。次回はGPU付きAWSを使ってCupyを試してみたいです。・・・が、先にQtとCppの勉強をしようかな。最後まで見てくださりありがとう!

Cython 久しぶりに研究者としてのログイン

2021.04.25こんにちは。RockinWoolです。最終登校日からおよそ10ヵ月も空いてしまいました。その間、コロナ禍やテレワークなどいろいろ出来事がありましたね。RockinWoolとしては激動の1年でした。最近は仕事で気持ちが浮き沈みすることも少なくなってきたかな・・・と過去の記事を見て思います。とはいえ他の人よりもどうしても激烈苛烈になりがち。 さて、今回は久しぶりのCython練習編という感じです。いつも「Pythonを高速化したいなあ」⇒「せや!Cython使ったろ!」ってなって、しばらく使ううちに忘れるパターンが多い言語です。この際ブログに残していつでも参照できるようにしておこ。明日はAWS(EC2)+VSCodeの環境を作って遊ぶぞー(予告) \ 最初にやることは普通のpython関数を作成することである。今回は以下のような関数を記述した。 Cythonプログラム拡張子であるhelloworld.pyxに変更する Cythonプログラムをコンパイルするための設定プログラムを作成して実行する。以下のプログラムを作成&実行すれば良い。ただしWin&Anaconda環境でやっているため、Linuxではコンパイラが異なる点に注意。 ここまでの動作でコンパイルは完了しているため、あとは呼び出して使うだけである。