Как скомпилировать игру / программу, которую я только что скачал

Предположим вы только что скачали исходный код своей любимой игры или программы и хотите скомпилировать его, чтобы иметь возможность наслаждаться. Как выполнить такую ​​титаническую задачу? Не волнуйтесь, скомпилировать и установить эту игру / программу в Linux не так сложно, как кажется.

Процедура сборки и установки

Всякий раз, когда вы загружаете исходный код программы, он будет сжат в файл, который в Linux обычно имеет тип tar.gz или tar.bz2. Конечно, он может быть в любом другом формате (например, zip), но обычно это правило.

Итак, первый шаг - распаковать этот файл. Самый простой способ - открыть Nautilus, щелкнуть правой кнопкой мыши нужный файл и выбрать разжимать. Однако метод, который мы здесь увидим, используется терминалом.

После того, как файл будет распакован, будет создан каталог, к которому мы должны получить доступ, и из которого мы начнем настройку и компиляцию программы.

Когда вы делаете все это из терминала, используйте следующие команды:

tar xvzf package.tar.gz (или tar xvjf package.tar.bz2) cd package ./configure make make install

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

Шаг 1: декомпрессия

Расширение tar.gz или tar.bz2 означает, что загруженный вами исходный код сжимается в файл tar, также известный как tarball. Это значительно упрощает распространение исходного кода, поскольку все файлы и папки, составляющие его, упакованы в один файл. После упаковки в tar-файл этот файл сжимается с использованием алгоритма gz или bz2, в зависимости от вкуса разработчика.

Чтобы распаковать файл tar.gz, я написал:

tar xvzf package.tar.gz

В случае файла tar.bz2:

tar xvjf package.tar.bz2

В большинстве случаев это создаст папку в каталоге, где находится сжатый файл. Имя папки будет таким же, как у сжатого файла.

Шаг 2: настройка

Как только вы вошли в папку, созданную путем распаковки файла tar.gz или tar.bz2 ...

cd папка

… Пора настраивать пакет. Обычно, но не всегда (поэтому важно читать файлы README и INSTALL), это достигается путем запуска сценария установки:

. / Настроить

Когда вы запустите этот скрипт, ничего еще не будет установлено, он просто проверит систему и присвоит значения некоторым системно-зависимым переменным. Эти значения используются для создания Makefile. Makefile, в свою очередь, используется для создания двоичного файла, который в конце истории позволит программе работать.

Когда вы запустите эту команду, вы увидите, что на экране появляется множество загадочных сообщений. В случае ошибки появится сообщение; и если все пойдет хорошо, мы можем перейти к следующему шагу. 🙂

Шаг 3: создание двоичного файла

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

сделать

Чтобы эта команда была успешной, предыдущий шаг должен быть успешным. Без Makefile программа make завершится ошибкой. Вот почему так важно, чтобы сценарий установки работал успешно.

Да, экран снова заполнится странными сообщениями, и это, скорее всего, займет некоторое время. Это будет зависеть от размера программы и скорости вашего компьютера.

Шаг 4: установка

Конечно, у нас уже есть исполняемый файл, но его установка отсутствует. Этот шаг должен быть выполнен с правами администратора.

sudo make install

Поскольку в этом гипотетическом случае мы не внесли никаких изменений в файл конфигурации, программа будет установлена ​​в папку по умолчанию. В общем, это обычно / USR / местные / бен поскольку он позволяет, что с любой стороны при написании имени программы она выполняется (без необходимости вводить полный путь к программе).

Шаг 5: выполнение

Нет, мы никого не убивали. Это просто завершающий этап всего процесса сборки и установки. Чтобы запустить программу, которую мы так старательно превратили в двоичный файл, я написал:

./ название программы

Если программа была установлена ​​в другую папку, отличную от / usr / local / bin, вы должны ввести полный путь к программе.

Уборка ранчо

Если у вас очень и очень мало места на диске, вы можете удалить все файлы, созданные в процессе сборки двоичного файла. В этом случае я получил доступ к папке, созданной путем распаковки файла, и набрал:

очистить

Примечание: убедитесь, что ваш Makefile. Этот файл понадобится при удалении программы в будущем.

Пробные

Программа оказалась не такой, как мы ожидали, и мы хотим стереть ее с лица нашей системы. Как? Программа, которую я только что установил, не отображается в Центре программного обеспечения или Synaptic? И сейчас?

Если вы не удалили свой Makefile, можно легко удалить программу. Я написал следующую команду внутри папки, созданной при распаковке файла:

сделать удаление

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

Если вы удалили Makefile, лучше всего переустановить программу, а затем выполнить сделать удаление, так как это восстановит Makefile. Не забудьте установить его, используя те же конфигурации (в данном случае ни одной) в . / Настроить.


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Алекс сказал

    Хороший урок, большое спасибо, всегда, когда мы начинаем работать с Linux, одна из основных проблем заключается в том, как скомпилировать, хорошо объяснено, хотя рекомендуется прочитать файл readme или установить ...

  2.   Алекс сказал

    Хороший урок, большое спасибо, всегда, когда мы начинаем работать с Linux, одна из основных проблем заключается в том, как скомпилировать, хорошо объяснено, хотя рекомендуется прочитать файл readme или установить ...

  3.   Эмилиано Перес сказал

    «Если вам не повезло и удаление было неудачным, не останется ничего другого, как удалить файлы вручную. Настоящая головная боль »

    Более целесообразно переустановить его, а затем выполнить «make uninstall», так как Makefile будет заново сгенерирован. Важно установить его, используя те же конфигурации (в данном случае ни одной) в configure.

  4.   Хуан сказал

    теперь, если вы не хотите запускать его, указав имя программы, но создавая ярлык на рабочем столе или отображая его в меню приложений, как вы это делаете?
    привет!

  5.   Киви_киви сказал

    Хороший учебник. Теперь даже я могу компилировать.

  6.   Маркошип сказал

    Я думаю, что вторым шагом будет чтение readme (RTFR xD), и это самый фундаментальный из всех, поскольку у многих программ есть зависимости, которые вы должны соблюдать при установке, или требуется какой-то дополнительный шаг, или также хорошо, что вы его прочитали, потому что он обеспечивает хорошее варианты марки, которые могут нас заинтересовать.

    привет!

  7.   Давайте использовать Linux сказал

    Полностью! Вот почему я рекомендую всегда читать README и INSTALL.

  8.   Давайте использовать Linux сказал

    Ты прав. Это на случай, если у вас нет файла Makefile. Я говорил о случае, когда даже при наличии Makefile его нельзя было удалить по какой-то другой причине.
    В любом случае, я собираюсь добавить ваш комментарий к посту, который я считаю очень уместным и точным.

    Обнимаю и благодарю за комментарий! Павел.

  9.   Давайте использовать Linux сказал

    Tudo bem Krafty! Никто не обижается. Я написал этот пост, потому что никогда не освещал эту тему в блоге. В любом случае, я обращаю внимание на темы, которые вы рекомендуете (некоторые очень хорошие). Обязательно напишу о них в недалеком будущем.
    Крепко обнимаю и благодарим за то, что оставили свои комментарии! Павел.

  10.   крафты сказал

    Не хочу быть злым, но эта тема уже несколько раз обсуждалась в этом году.

    Я предлагаю несколько тем, чтобы вы видели, что я не оставляю комментарий только для того, чтобы сделать барда.

    - Телефония через IP
    - Разные торрент-клиенты (какой выбрать).
    - Создание скриптов тех вещей, которые у нас неоднократно появлялись в консоли.
    - Удалите модули из ядра, чтобы оно быстрее инициализировало Linux при загрузке.

    Надеюсь я никого не обидел / не приставал

  11.   приглашенный сказал

    отлично, отлично подходит для тех из нас, кто начал увлекаться Linux

  12.   Давайте использовать Linux сказал

    Да, как правило, они подробно описаны в README. В противном случае при компиляции появится ошибка, и на основе ошибки (которая укажет, какая библиотека отсутствует) нам придется установить соответствующую зависимость.
    Объятья! Павел.

  13.   Виолончели сказал

    Крафти, вы определенно плохие флюиды. Где вы видели подобное руководство, такое ясное и понятное? для меня отлично, салу2,

  14.   rv сказал

    Большое спасибо за руководство! Оно помогло мне кое-что прояснить 🙂

    Кстати, совет, который мне очень помог в решении проблемы зависимостей, - это в первую очередь «sudo apt-get build-dep имя_программы»; Я не знаю, работает ли он на всех дистрибутивах, я использовал его в Debian (Squeeze, где я недавно скомпилировал MuseScore 1.2, чтобы облегчить архаичные репозитории стабильной ветки ... ...

    Я полагаю, что кто-то более информированный сможет дать более подробную информацию 🙂

    Привет!

  15.   Росгори сказал

    Разве мы не должны учитывать зависимости, которые нужны программе перед компиляцией?

  16.   ДиегоГарсия сказал

    У меня мало времени на использование Linux, и это одно из моих самых больших сомнений, это будет очень полезно для меня, так как я не нашел ни одного сообщения с этой конкретной темой 😀
    или ты что-нибудь знаешь?
    Ура ..

  17.   рамки сказал

    отлично, я не видел этот пост, но это из-за ошибки типа 1 или ошибки типа 2

  18.   ибон сказал

    А другого метода нет?
    Этот метод я уже успешно использовал. Проблема в том, что существует очень много программ с исходным кодом, которые не используют эту систему, у нас нет скрипта настройки. Хотелось бы как их скомпилировать.