3

私は現在、Promela/Spin を学んでいます。私が抱えている問題は、プログラムを検証できないことです。

私は自分の pan ファイルを次のように作成します: spin_64bits.exe -a x.pr --- ここまでは問題ありません。

今、gcc pan.c (gcc -o pan pan.c など) を介して pan.c をコンパイルしようとすると、srandom と random への未定義の参照があるというエラーが表示されます。

注: これらを srand() と rand() でそれぞれ交換すると機能しますが、正直なところ、検証を実行するたびに pan.c を開いて編集したくありません。

おそらく別のコンパイラを使用する必要がありますか?MinGWを使用しています。

4

1 に答える 1

4

編集:MaxGhostより良い実践のためにのコメントを参照してください(「これらのコンパイルフラグをプロジェクトに追加してください:-Dsrandom=srand -Drandom=rand」)


どちらかがこの投稿に出くわしたようです。そのため、私にとってうまくいった答えをもっと目に見えるようにすることもできます.

MinGWフォルダーに移動し、(C:\MinGW\include) を検索して入力しますstdlib.h(他の #defines のどこかに、例: #include <_mingw.h> の下):

#define random rand
#define srandom srand
于 2015-02-17T17:02:56.167 に答える