Wie kann ich Click-Paketen benutzerdefinierte Abhängigkeiten hinzufügen?

17

Meine Ubuntu-Touch-Anwendung erfordert ein Paket, das aufgerufen wird, libqt5network5um ausgeführt zu werden. (Dies kann über APT installiert werden.)

Sobald ich das Click Package aus dem Ubuntu SDK erstellt und installiert habe, wird nicht mehr nach libqt5network5Abhängigkeiten gesucht.

Ich möchte wissen, wie man Abhängigkeiten zu Click-Paketen hinzufügt.

Naveen
quelle

Antworten:

1

Das Click-Packaging-Format ist völlig unabhängig von den Einrichtungen, die zur Durchführung von Installationen oder Upgrades auf dem gesamten System erforderlich sind. Derzeit sollte dieses Paket mit Python 2.7, 3.2, 3.3 und 3.4 kompatibel bleiben. Ubuntu 12.04 LTS, Ubuntu 13.10 und Ubuntu 14.04 LTS. Wenn Sie von einem neuen bzr-Checkout aus starten, müssen Sie zunächst die erforderlichen Build-Abhängigkeiten ausführen

$ dpkg-checkbuilddeps

Dann renne:

    $ ./autogen.sh
    $ ./configure --prefix=/usr \
        --sysconfdir=/etc \
        --with-systemdsystemunitdir=/lib/systemd/system \
        --with-systemduserunitdir=/usr/lib/systemd/user
    $ make
    to build the project.

Abhängigkeiten
Stellen Sie für Ubuntu 14.04 sicher, dass Sie die Pakete python2.7 und python3.4 installiert haben. Sofern Sie kein Upgrade von einer früheren Ubuntu-Version durchgeführt und diese noch nicht entfernt haben, stehen Python 3.3 und Python 3.2 nicht zur Verfügung. Erstellen Sie sie bei Bedarf aus dem Quellcode, installieren Sie sie beispielsweise in /usr/localund stellen Sie sicher, dass sie sich auf Ihrem befinden $PATH. Sie müssen tox (Ubuntu-Paket python-tox) installiert haben, um die vollständige Testsuite ausführen zu können. Sie sollten nur sagen können.

$ tox

um die volle Suite laufen zu lassen. Verwenden Sie die Option -e von tox, um die Tests für eine Teilmenge von Python-Versionen auszuführen. Sie sollten in den virtuellen Umgebungen, die tox erstellt, nichts manuell installieren müssen, aber möglicherweise müssen Sie dies tun, wenn nicht alle Abhängigkeiten in Ihren System-Pythons installiert sind

Sie benötigen die Mock- und Python-Debian-Bibliotheken. Für Ubuntu 13.10 installiere apt-get die folgenden Pakete:

  • Python-Mock
  • Python-Debian
  • python3-debian

Testen
Nachdem alle oben genannten Komponenten installiert wurden, können Sie tox ausführen, um die Testsuite für alle unterstützten Python-Versionen auszuführen. Die ./run-testsSkripte führen nur eine zusätzliche Prüfung durch, um sicherzustellen, dass die gemeinsam genutzte Bibliothek vor dem Laden erstellt wurde. Verwenden Sie zum Ausführen eines bestimmten Testfalls den Standard-Python-Unittest.

Syntax wie:

$ python3 -m unittest click.tests.test_install
or:

$ python2 -m unittest click.tests.test_build.TestClickBuilder.test_build

Testabdeckung Wenn Sie Python-Abdeckung installiert haben, können Sie einen Python-Testabdeckungsbericht erhalten, indem Sie Folgendes eingeben:

$ python-coverage combine 
$ python-coverage report 

Dies funktioniert auch für Python3-Coverage.

Um Informationen zur Vala / C-Abdeckung zu erhalten, installieren Sie die Pakete gcovr und lcov und führen Sie Folgendes aus:

$ ./configure –enable-gcov 
$ make coverage-html 

Dadurch wird eine Datei "coveragereport / index.html" für Sie erstellt.

Die kombinierten Informationen zur Abdeckung erhalten Sie über:

$ make coverage.xml
crackhead.h
quelle