2012-11-16 11 views
21

Snow LeopardでMacにValgrindをインストールしようとしていますが、エラーが発生しています。これが私がターミナルに入力しているものです。Valgrindのインストール中にmakeが失敗する

$ curl -O http://valgrind.org/downloads/valgrind-3.8.1.tar.bz2 
$ md5sum valgrind-3.8.1.tar.bz2 
$ tar -xjvf valgrind-3.8.1.tar.bz2 
$ cd valgrind-3.8.1 
$ ./configure 
$ make 

これは私が得るエラーです。

Making all in coregrind 
make[2]: *** No rule to make target `/usr/include/mach/mach_vm.defs', needed by `m_mach/mach_vmUser.c'. Stop. 
make[1]: *** [all-recursive] Error 1 
make: *** [all] Error 2 

このエラーを修正するにはどうすればよいですか?

+0

Xcodeがインストールされていますか? –

+0

Snow Leopardを入手するのが特に難しいため、Xcodeはありません。 –

+0

下記の私の答えを参照してください。私はそれがあなたの問題を解決すると信じています。 – Volte

答えて

4

明らかに、Macintoshでコンパイルするには、valgrindにファイル/usr/include/mach/mach_vm.defsが必要です。私はmach_vm.defsの具体的な参照が特にXCodeの一部であるのを見つけることができませんでしたが、Xcodeが標準の場合、/usr/include/machの通常の内容のほとんどがインストールされているようです。

何らかの理由でマシンにXCodeをインストールできない場合は、特定のディレクトリのソースファイルのほとんどをthis part of apple's open source websiteから取得できます。

+0

これが問題でした。残念ながら、私は別の問題に遭遇しました。解決できない場合は、新しい質問を投稿します。 –

+0

同様の問題がありました。この回答は役に立ちましたが、このページのコメントの一部もそうしました。 http://calvinx.com/2014/05/04/valgrind-on-mac-os-x-10-9-mavericks/ xcodeの/ usr/include/mach = /Applications/Xcode.app/Contentsへのインストール場所/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include –

+1

この問題は、新しいEl Capitan OSのように再び発生します。sudoでも/ usr/includeディレクトリを作成できない場合 –

80

コマンドラインツールをインストールしてください。

xcode-select --install 
+6

簡単な修正、受け入れる必要があります –

+4

正しい、これはValgrind開発者から推奨される修正プログラムです。上記の選択肢は脆弱であり、将来のXcodeリリースで動作することは保証されていません。 –

+4

これは私にとって完璧に機能しました。これは受け入れられた答えでなければなりません。 – CGTheLegend

4

適切にコンパイルされたvalgrindを取得する最良の方法は、上記の答えに記載されているように 'xcode-select --install'コマンドを使用することです。 はしかし、次善のハックとして、あなたはそれは、/ usr /含める/マッハ(このディレクトリを作成します)にOSX /mach sourceから以下のファイルをダウンロードしてコンパイルされ得ることができます:

mach_vm.defs  
task.defs 
thread_act.defs 
vm_map.defs 

それは少し汚いハックですが、それが必要大きなXcodeのオリジナルファイルをダウンロードしたりインストールしたりしたくない場合は、ぜひお試しください。

関連する問題