2

私はクレーが初めてなので、チュートリアルを作り始めました。

コンパイルに使用する場合:

  1. llvm-gcc --emit-llvm -c -g get_sign.c その後、klee get_sign.o を使用して実行しようとすると、次のエラーが表示されます: KLEE: ERROR: error loading program 'get_sign.o': Invalid MODULE_CODE_GLOBALVAR record . このエラーは、BitcodeReader.cpp ファイル http://llvm.org/docs/doxygen/html/BitcodeReader_8cpp_source.html の行 01594 で定義されています。

  2. clang (LLVM パスに正常に使用しました)、それを使用できないようです: KLEE: エラー: プログラム 'get_sign.o' の読み込み中にエラーが発生しました: 無効なビットコード署名 .

私に何ができるか知っていますか?

また、すでにパスに使用している Clang でコンパイルされた Klee 入力を提供するとよいのですが、エラーが示唆するように、それは可能ですか?

前もって感謝します !

4

1 に答える 1

1

問題は、Klee を LLVM 3.1 にインストールしたことです。http://klee.llvm.org/GetStarted.htmlの説明では、Klee は LLVM 2.9 と完全に互換性があると述べられています。「KLEE は現在、LLVM 2.9 を使用して Linux x86-32 および x86-64 ターゲットでのみテストされています。KLEE は古い LLVM バージョン (2.5 など) では動作せず、新しいバージョン (3.0 など) では動作しない可能性があります。 )」。Klee を LLVM 2.9 にインストールしましたが、完全に動作しています。

于 2013-01-29T09:56:32.720 に答える