![書評:『自然言語処理と深層学習《C言語によるシミュレーション》』 | Webシステム開発/教育ソリューションのタイムインターメディア](https://cdn-ak-scissors.b.st-hatena.com/image/square/e436d087f4f50c1b302b7cabaa9c23c65f077da5/height=288;version=1;width=512/https%3A%2F%2Fwww.timedia.co.jp%2Fwp-content%2Fuploads%2F2022%2F03%2F06099bd46526745aa9ddab96c0ddde8f.jpg)
int do_things(void); int application_main(void) { return do_things(); } int test_main(void) { return 42; } int main(void) { return test_main(); } 元の問題は、application_mainとtest_mainを(おそらくはプリプロセッサで)切り替えたいのですが、ライブラリに関数do_thingsが実装されていないためリンクが失敗します。 /tmp/demo-d19626.o: 関数 `application_main' 内: demo.c:(.text+0x5): `do_things' に対する定義されていない参照です clang-6.0: error: linker command failed with exit code 1 (use
LLVM には C++ と C API が用意されています. 最近は FTL http://blog.llvm.org/2014/07/ftl-webkits-llvm-based-jit.html のおかげで C API の整備が大分進み, 十分使える感じになっています. C API のほうがコンパイル時間も短くて済み, また言語バインディングを書くとなども, リンケージや ABI 問題に悩まされなくなります. これからは C API で書いておきたいですね. LLVM C API のサンプル ひとつの大きな問題はドキュメントやサンプルコードがオフィシャルには無い事です. 幸い FTL(webkit) には RefucedFTL という謎(?)の LLVM C API を使ったサンプルがあります. これをみれば大体わかりますね! 昨今の LLVM では MCJIT が推奨のようです. E
背景 Pythonでの単体テストのやり方が書いてあるテスト駆動Pythonを読んで、実際の業務で実践していました。 その効果を話していたところ、組み込み開発チームでも導入していきたいということだったので、組み込み開発でテスト駆動開発を行うテスト駆動開発による組み込みプログラミングを参考にしながら、Cpputestを導入しました。 その際の導入手順をここにまとめます。 目的 実機がなくても開発したコードの動作が検証可能な環境を構築する ホスト(PC)での単体テスト実行環境を構築 ターゲット(組み込みLinux基板)での単体テスト実行は未実施 環境 OS: Debian GNU/Linux 9 on WSL テストフレームワーク: Cpputest 3.8 インストール手順 Cpputestをダウンロード 後にCPPUTEST_HOMEという環境変数にCpputestをビルドしたディレクトリに
WebAssemblyランタイム比較(Lucet, Wasmer, Wasmtime) https://zenn.dev/zaki_yama/scraps/cd40f7535b3224 wasi-sdk + wasmer-python で C/C++ アプリを WASM でポータブルに動かすメモ https://qiita.com/syoyo/items/300d4ef7fd105e69ad10 WASI で動かすのは wasmer, wasmtime が主にありましたが, 最近(2022/09 時点), WasmEdge というのも出てきました. AOT(Ahead of time) compile で高速実行目指す?っぽい. C/C++ アプリを速度落とさずのサンドボックス実行できそうな気がしますので試してみます. wasmer(C/C++ をポータブルなプラグインにして Python
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く