30Jun

Hoe afhankelijkheden op te lossen tijdens het compileren van software op Ubuntu

Het moeilijkste deel van het compileren van software op Linux is het lokaliseren van de afhankelijkheden en het installeren ervan. Ubuntu heeft apt-commando's die afhankelijkheden automatisch detecteren, lokaliseren en installeren en het zware werk voor je doen.

We hebben onlangs de basisbeginselen besproken van het compileren van software van de bron op Ubuntu, dus bekijk ons ​​originele artikel als je net begint.

Auto-Apt

Auto-apt wacht en wacht wanneer u de opdracht. /configure erdoorheen uitvoert. Wanneer. /configure probeert toegang te krijgen tot een bestand dat niet bestaat, plaatst auto-apt het. /configure-proces in de wacht, wordt het juiste pakket geïnstalleerd en wordt het. /configure-proces voortgezet.

Installeer eerst auto-apt met de volgende opdracht:

sudo apt-get install auto-apt

Nadat het is geïnstalleerd, voert u de volgende opdracht uit om de bestandslijsten te downloaden die automatisch nodig zijn. Dit proces duurt enkele minuten.

sudo auto-apt update

Nadat de eerste opdracht is voltooid, voert u de volgende opdrachten uit om de databases bij te werken. Deze opdrachten zullen ook een paar minuten duren.

sudo auto-apt updatedb & &sudo auto-apt update-local

Nadat u uw auto-apt-databases hebt gebouwd, kunt u het. /configure-proces starten met de volgende opdracht:

sudo auto-apt run. /configure

Apt-File

Als u eenfoutmelding dat een specifiek bestand ontbreekt, misschien weet u niet welk pakket u moet installeren om het bestand te krijgen. Met Apt-bestand kunt u de pakketten vinden die een specifiek bestand bevatten met één enkele opdracht.

Eerst moet apt-bestand zelf worden geïnstalleerd:

sudo apt-get install apt-file

Nadat het is geïnstalleerd, voert u de volgende opdracht uit om de bestandslijsten van uw geconfigureerde apt-repositories te downloaden. Dit zijn grote lijsten, dus het downloaden ervan duurt enkele minuten.

sudo apt-file update

Voer de volgende opdracht uit en vervang " example.pc " door een bestandsnaam, en de opdracht zal u precies vertellen welk pakket u moet installeren:

apt-file search file example.pc

Installerenhet pakket met de standaard apt-get install-opdracht:

sudo apt-get-installatiepakket

U kunt ook een bestand zoeken op de Ubuntu Package Search-website. Gebruik de sectie " Search the contents of packages " op de pagina om een ​​specifiek bestand te doorzoeken.

Het geeft je dezelfde resultaten als apt-bestand, en je hoeft geen bestandslijsten te downloaden.

Apt-Get Build-Dep

We hebben apt-get build-dep behandeld in onze eerste post. Als een eerdere versie van het programma dat u probeert te installeren zich al in de pakketrepository's van Ubuntu bevindt, kent Ubuntu al de afhankelijkheden die het vereist.

Typ de volgende opdracht, ter vervanging van "-pakket " met de naam van de packge en apt-get installeert de vereiste afhankelijkheden:

sudo apt-get build-dep-pakket

Apt-get vraagt ​​u om alle vereiste afhankelijkheden te installeren.

Als een nieuwere versie van het programma verschillende afhankelijkheden vereist, moet u mogelijk enkele extra afhankelijkheden handmatig installeren.

Al deze commando's gebruiken apt-get, dus je kunt ze ook gebruiken op Debian, Linux Mint en elke andere Linux-distributie die apt-get en. deb-pakketten gebruikt.