web-dev-qa-db-ja.com

Mac OSX用にRarcrackをコンパイルする方法は?

どうしても必要なRARがあり、そのパスワードはもう存在しないサイトにファイルとして保存されています:(。

私はそれをmacosx 10.5.8で実行していて、これまでターミナルを使用したことがありませんが、「make」を使用すると表示され、常にエラーが発生するところまで到達するのに十分なことがわかりました。

-bash: make:command not found

ターミナルを使用してtarファイルを抽出する方法を理解しましたが^ _ ^

要件がわからなかったので、必要だと言われているCコンパイラを入手することにしました。そこで、Tiny Cコンパイラをインストールしてから、2.4より新しいバージョンのglibcをインストールしようとしました(少なくともそれが私が理解した方法です> glibc 2.4の要件です!)しかし、コンパイラがないなどの設定を試みるたびに、コンソールでエラーが発生し続けました。

ここからどこへ行くの?少し調べてみたところ、 このリンク 私が想定しているコンパイラでもあるGCCをインストールするのですか?リンクから何を取得するかさえわかりません...正規表現とPOSIXについてほとんど知らないことから、pthreadは単なるposixスレッドであり、Macを実行しているので、何かを正しくダウンロードまたはインストールする必要はありません。 ?また、見つけたlibxml2をインストールする必要があります ここ 。 glibcと同じ方法でインストールしますか?

申し訳ありませんが、実際にはたくさんの質問があります:(

また、自宅のコンピューターではなく仕事をしているため、正確なエラーを取得できません。

5
Travis Crum

Mac OS Xでは、Appleは、GCC(GNUコンパイラコレクション)ツールチェーンのカスタムビルドを、XCodeとして知られる統合開発環境(IDE)と一緒に配布します。

XCodeは、XCodeのビルドシステムをサポートするソフトウェアをビルドするために使用できるグラフィカルユーザーインターフェイスです。ただし、XCodeと一緒にインストールされるバージョンのGCCを使用するために、XCode自体を使用する必要はありません。 XCodeは、GCCのオプションのグラフィカルフロントエンドと考えてください。これは、XCodeでビルドするように設計されたプロジェクトをコンパイルする場合にのみ必要です。

Apple XCodeに同梱されているGCCコンパイラは、多くのネイティブプログラミング言語をサポートしています。そのうちの1つはCです。これにより、Cコンパイラの問題が解決されます。

XCodeをインストールすると、ターミナルからgccコマンドを何もせずに実行できるようになります。それを試してみてください; gccを実行するだけです。それは言うべきです:

gcc:入力ファイルなし

またはそれに類似したもの。それがそれを言うなら、あなたはあなたが少なくとも進歩していることを知っています。これで、Cコンパイラができました。

また、TinyCコンパイラをインストールしたり心配したりしないでください。

gccをインストールしたら、makeを実行すると少なくとももう少し先に進むはずです。 rarcrackのビルドシステムが、特定の依存関係がインストールされていないと文句を言う場合は、それらの依存関係をソースからコンパイルするか、ビルド済みの開発ライブラリをインストールする必要があります。

ビルドシステムが依存関係ライブラリがないことを通知しようとする方法はいくつかありますが、それらのいくつかは、「未定義のシンボル何とか何とか」や「:そのようなファイルまたはディレクトリはありません」などのかなり不可解なメッセージです。これらの種類のエラーが表示された場合、通常はコンパイラーが依存関係が欠落していることを通知しようとしています。対照的に、よりフレンドリーなビルドシステム(rarcrackにはないようです)は、次のようなもので優雅に文句を言います。

LIBXML2をチェックしています...いいえ

何がうまくいかないかについては無限の可能性がありますが、エラーメッセージのパターンを認識して分析することを学ぶか、少なくとも SuperUser/StackOverflowで質問したときに正確なエラーメッセージを投稿すると、あなたははるかに。

rarcrack自体に関しては、GLib2.0に依存します。まあ、正確にバージョン2.0ではありませんが、少なくともで始まるバージョンの前に「2」が付いているバージョンです。そのため、「2.xシリーズ」の最新の安定版リリースでも、以前のバージョンと同様に機能します。つまり、2.xシリーズにある最新バージョンのGLibを使用する必要があります。これは次のようになります。 ここ はGLib「2.32シリーズ」のダウンロードです。最新のものと書かれているものをダウンロードしたいのですが、この記事の執筆時点は2.32.4です。これを読んだときに2.32.5以降が出ている場合は、代わりにそれを入手してください。それが出た後にこれを読んでいるなら、2.34シリーズを見たいかもしれません(それらは不安定なリリースなので、痛みを避けたいなら奇数番号のシリーズを使用しないでください)。

残念ながら、GLibはたくさんのものに依存しているため、GLibの既存のビルドとそのすべての依存関係を見つけるか、ソースからすべてをコンパイルする必要があります。ただし、ソースからコンパイルする代わりに、MacportsまたはFinkをチェックアウトして、バイナリを簡単に入手できるようにしてください。

7
allquixotic

今日、私は小さな.rar/.Zipパスワードクラッカーが欲しかったので、Rarcrackに出くわしました。

ここでGithubの私のリポジトリを見てください:

https://github.com/jaredsburrows/Rarcrack

元のコードはこちら:

http://rarcrack.sourceforge.net/

基本的に、Mac OSXのバージョンのGCCは、元のコードにあった多くのインライン関数の使用を好みませんでした。インライン関数を削除して通常の関数にし、他のいくつかの小さな変更を加えてコンパイルしました。提供された例でrarcrackを実行して、動作することを確認しました。

これが役立つかどうか教えてください!

1
Jared Burrows