Valgrindトランクからソースをダウンロードし、ARM926(ARMv5tアーキテクチャ)を搭載した組み込みLinuxシステム(Montavista Linux)で使用するためにビルドしました。作成したアプリケーションを確認するために実行するまで、すべてがうまくいきました。 Valgrindは私に言います:
"valgrind:プラットフォーム 'arm-linux'のツール 'memcheck'の開始に失敗しました:そのようなファイルまたはディレクトリはありません。
他のツールを実行しようとすると、同じメッセージが表示されます。 make installの場合、NFS経由でマウントされている組み込みシステムのファイルシステムを指す--prefixオプションを使用しました(例--prefix =/home/NFS_mounted/opt/valgrind)。インストール場所を確認しましたlibディレクトリには適切なツールが含まれています。 Valgrindの対応するpkgconfigファイルも確認しましたが、問題はないようですので、現時点では何の問題もなく、何が問題なのか理解できません。 2つの質問:
ターゲットデバイスでこのコマンドを実行します
export VALGRIND_LIB=~/valgrind/lib/valgrind/
どこ ./valgrind
はインストールされたディレクトリパスです(./configure
)
問題は、「valgrind」が実際のチェックを実行するための別の実行可能ファイルを探していることです。構成時に指定したインストールパスを使用します。これは、ターゲット上のパスとは異なります。
'/'を指すシンボリックリンク/ home/NFS_mountをターゲットに作成することで、これを確認できるはずです。
AMD64-linuxディレクトリの親ディレクトリをVALGRIND_LIBに配置します。例えば。:
export VALGRIND_LIB=/u/gallinar/downloaded/valgrind-3.2.3/.in_place
それは今日私のために働いた:)。
VALGRIND_LIBは、memcheckツールと他の依存するxコンパイル済みライブラリがあるフォルダーを指す必要があります