5

У меня есть rar, в котором я отчаянно нуждаюсь, чей пароль был сохранен в виде файла на сайте, который больше не существует :(.

Я запускаю его на Mac OSX 10.5.8 и никогда раньше не пользовался терминалом, но я разобрался достаточно, чтобы добраться до точки, где он говорит «сделай», и он всегда выдает ошибку.

-bash: make:command not found

Я понял, как использовать терминал для распаковки tar-файла, хотя ^ _ ^

Я не понимал, какие требования предъявлялись, поэтому я решил получить компилятор C, который, как он говорит, необходим, поэтому я установил Tiny C Compiler, а затем попытался установить версию glibc более новую, чем 2.4 (по крайней мере, так я понял> Требование Glibc 2.4!) но каждый раз, когда я пытался настроить его, он выдавал ошибку в консоли, сообщая, что компилятора нет.

Куда мне идти отсюда? После небольшого исследования я нашел эту ссылку для установки GCC, который также является компилятором? Я даже не знаю, что получить по ссылке .... Из того, что я мало знаю о regex и POSIX, pthread - это просто потоки posix, и, поскольку я работаю с Mac, мне не нужно ничего скачивать или устанавливать правильно? Я также должен установить libxml2, который я нашел здесь. Я устанавливаю это так же, как glibc?

Извините, что на самом деле много вопросов :(

Также извините, я не могу найти точные ошибки, потому что я на работе, а не на моем домашнем компьютере.

2 ответа2

7

В Mac OS X Apple распространяет пользовательскую сборку набора инструментов GCC (GNU Compiler Collection) вместе со своей интегрированной средой разработки (IDE), известной как XCode .

XCode - это графический интерфейс пользователя, который можно использовать для создания программного обеспечения, поддерживающего систему сборки XCode. Однако нет необходимости использовать сам XCode для того, чтобы использовать версию GCC, которая установлена вместе с XCode. Думайте о XCode как о дополнительном графическом интерфейсе для GCC, который необходим только в том случае, если вы пытаетесь скомпилировать проект, предназначенный для сборки с помощью XCode.

Компилятор GCC, поставляемый Apple с XCode, поддерживает несколько родных языков программирования. Одним из них является C. Так что это решает проблему вашего компилятора C.

После установки XCode вы сможете запускать команду gcc из Терминала, ничего не делая. Попытайся; просто запустите gcc . Следует сказать:

gcc: нет входных файлов

или что-то похожее на это. Если это говорит об этом, то вы знаете, что, по крайней мере, делаете успехи; Теперь у вас есть компилятор Си.

И не устанавливайте и не беспокойтесь о Tiny C Compiler.

После того, как вы установили gcc , запуск make должен как минимум продвинуть вас дальше. Если система сборки rarcrack жалуется, что у вас не установлены определенные зависимости, вам придется скомпилировать эти зависимости из исходного кода или установить для них предварительно собранные библиотеки разработки.

Существует несколько способов, которыми система сборки может попытаться сообщить вам, что вам не хватает библиотеки зависимостей, и некоторые из них являются довольно загадочными сообщениями, такими как "undefined symbol blah blah" или «: такой файл или каталог отсутствует». Если вы видите такие ошибки, обычно компилятор пытается сказать вам, что вы пропустили зависимость; в отличие от этого, более дружественная система сборки (которой rarcrack, по-видимому, не имеет) будет изящно жаловаться на что-то вроде:

Проверка на LIBXML2 ... нет

Существуют безграничные возможности в отношении того, что может пойти не так, но научиться распознавать шаблоны в сообщениях об ошибках и анализировать их, или, по крайней мере, публиковать точные сообщения об ошибках, когда вы будете задавать вопросы в SuperUser / StackOverflow, значительно продвинет вас.

Что касается самого rarcrack , то это зависит от GLib 2.0. Ну, не совсем версия 2.0, но любая версия, которая хотя бы начинается с "2" перед ней. Таким образом, он будет работать так же хорошо с последней стабильной версией серии 2.x, как и с более ранней версией. Другими словами, вы хотите использовать самую последнюю версию GLib, которую вы можете найти в серии 2.x. Это было бы так: вот загрузка для GLib "2.32 серия". Вы хотите загрузить последний, который, как он говорит, является 2.32.4. Если на момент прочтения вышло 2.32.5 или новее, возьмите его. Вы также можете захотеть взглянуть на серию 2.34, если вы читаете ее после того, как она выйдет (не используйте серии с нечетными номерами, если вы хотите избежать боли, потому что это нестабильные выпуски).

К сожалению, GLib зависит от множества вещей, поэтому вам придется надеяться найти существующие сборки GLib и все ее зависимости, либо скомпилировать их все из исходного кода. Но вместо того, чтобы компилировать из исходного кода, возможно, загляните в Macports или Fink, чтобы без проблем получить двоичные файлы.

1

Сегодня я захотел небольшой взломщик паролей .rar/.zip и наткнулся на Rarcrack.

Посмотрите мое репо на Github здесь:

https://github.com/jaredsburrows/Rarcrack

Оригинальный код здесь:

http://rarcrack.sourceforge.net/

По сути, версия GCC для Mac OSX не понравилась для использования многих встроенных функций, которые были в исходном коде. Я удалил встроенные функции, сделав их обычными функциями, и с некоторыми небольшими изменениями получил его для компиляции. Я проверил, что это работает, запустив rarcrack на предоставленных примерах.

Позвольте мне знать, если это помогает!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .