SBCLを使用したクロスコンパイル
-
04-07-2019 - |
質問
UbuntuマシンでSBCLを実行しています。 Windowsのみを実行している友人に提供したい小さなプログラムを作成します。私のマシンで「スタンドアロン」にクロスコンパイルする最も簡単な方法は何ですか? windowsプログラム(つまり、通常のランタイムとコアの組み合わせ)?
解決
SBCLはクロスコンパイルを実行できますが、プロセス中にコードが評価されるため、ターゲットアーキテクチャにアクセスする必要があります。 SBCLのビルド処理は、 SBCL:でクリストフロードスによって説明されています。 -ブートストラップ可能なCommon Lisp 。
Windowsマシンに直接アクセスできない場合は、Wine(これが失敗することを期待します)または ReactOS (QEMU、HVM、Xen、名前は...)。
他のヒント
WindowsをVMにインストールしてアプリをコンパイルするのが最も簡単な方法だと思います。
コアはプラットフォーム/バージョンの組み合わせに固有です。 Luí sの方法を使用するか、CLispなどの別のLispで配布します。
異なるランタイムサポートプログラム間のコアイメージのバイナリ互換性はまったくありません。異なる時点で同じソースからビルドされたランタイムでさえ、この目的には互換性がないものとして扱われます。 SBCLマニュアル
所属していません StackOverflow