Як використовувати "apt", щоб отримати вихідний код, а потім зробити окрему компіляцію


27

Я хочу отримати вихідний код для проекту, а потім побудувати його так, як це вдалося б. Наприклад, я хочу, щоб робочий вихідний код і міг виконувати команду 'make' або подібну команду над джерелом.

Як я можу це зробити?

Конкретно я хочу отримати це джерело 'icedtea-6-jre-jamvm'

Відповіді:


29

Для цього прикладу я буду використовувати icedtea-6-jre-jamvmяк пакет, який ви хочете відновити.

Спочатку встановіть усі залежності та побудуйте необхідні:

sudo apt-get build-dep icedtea-6-jre-jamvm
sudo apt-get install build-essential

Потім схопіть джерело:

apt-get source icedtea-6-jre-jamvm

Потім введіть CD у каталог каталогів openjdk і побудуйте deb, -us і -uc тут пропустіть перевірки GPG, якщо ви просто перестроюєте його для себе:

cd openjdk-6-6b24-1.11.5
dpkg-buildpackage -us -uc

Потім перейдіть до каталогу і у вас повинні бути файли .deb.

Джерела:


це дуже приємно! одне велике перешкода почати внесок у безкоштовну програму - це "отримання її для компіляції", і приємно бачити це автоматизованим. Однак було б охайно, якби ми могли генерувати бінарні файли і зупинятися на цьому (тобто не генерувати деби), оскільки це дещо зручніше для розробників, які часто редагують і збирають ... Чи трапляється вам знати спосіб зробити що?
josinalvo

7

просто скомпілювати пакет, використовуйте сценарій debian / rules, який надається в кожному пакунку debain:

sudo apt-get build-dep <package>
apt-get source <package>
cd <package>_<version>
./debian/rules binary

це просто робить конфігурацію та компілювати частину.


4

Ви можете використовувати наступне:

apt-get source <package>

вам потрібно переконатися, що ви встановите залежності побудови:

sudo apt-get build-dep <package> 

для отримання додаткової інформації:

man apt-get

Альтернативний варіант: Спочатку потрібно знати розташування пакету. потім завантажте файл tar за допомогою:

sudo wget <url>

Потім можна знімати його та компілювати за допомогою make

якщо ви не впевнені в конкретній команді загляньте всередину папки, має бути READMEфайл або INSTALLякий підкаже вам відповідну команду.


Це отримати від хост-сайту. Чи є спосіб зробити це з 'apt. Повністю через "apt" мінус фактична компіляція. Наприклад, я можу зробити "apt get source", а потім перейти до цього каталогу, а потім "make".
Берлін Браун

вибачте, щойно оновив питання!
meda
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.