Bug im fhem Makefile

Begonnen von Shortie, 23 November 2020, 20:00:55

Vorheriges Thema - Nächstes Thema

Shortie

Ich hoffe es passt hier einigermaßen da ich nichts passenderes finden konnte und in FHEM Development nicht schreiben darf.

Das install target im fhem Makefile hat einen kleinen Bug und zwar wird die MAINTAINERS.txt nicht mit kopiert, wodurch sie dann im Installationsverzeichnis fehlt. Das führt wiederum zu einer Fehlermeldung beim fhem start das die MAINTAINER.txt nicht gelesen werden kann.

betateilchen

#1
Der Beitrag gehört eigentlich in das Unterforum "Sonstiges", Du kannst das mit dem Button unten links dorthin verschieben.

Das target "install" ist m.W. eigentlich nicht dafür gedacht, ein FHEM System damit zu installieren (ich weiß, dass das im Makefile so suggeriert wird).

Das target wird von vielen anderen targets im Makefile als Basis aufgerufen, danach verarbeiten die anderen targets (z.B. deb) auch weitere Dateien, und kopieren dabei auch die MAINTAINER.txt.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

#2
Zitat von: Shortie am 23 November 2020, 20:00:55
Das führt wiederum zu einer Fehlermeldung beim fhem start das die MAINTAINER.txt nicht gelesen werden kann.

Hast Du mal die genaue Fehlemeldung? Ich frage mich gerade, an welcher Stelle beim FHEM Start die Datei gelesen wird.

Erledigt. Meta.pm versucht, warum auch immer, die MAINTAINER.txt zu lesen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Shortie

Danke, habe es verschoben.

Ja, die Fehlermeldung kommt aus dem Meta.pm Modul.

Ich nutze fhem auf einem Arch Linux mit einem leicht angepassten PKGBUILD aus dem aur: https://aur.archlinux.org/packages/fhem/ bzw. hier direkt das PKGBUILD https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=fhem
Anpassungen sind z.B. um immer das aktuelle SVN zu nutzen.

Dort wird das install target genutzt um fhem ins Paket Verzeichnis zu installieren um es damit dann zu paketieren. Auch kenne ich sonst das install target im Makefile generell für die Installation. Was wäre denn das richtige target in diesem Fall?

betateilchen

(vorab: ich kenne Arch Linux nicht)

Warum musst Du das überhaupt paketieren?

Kannst Du das FHEM nicht direkt aus SVN installieren?
Bei mir entstehen alle FHEM Installationen auf diesem Weg.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Vermutlich würde es keine Probleme verursachen, die MAINTAINER.txt im install target zu kopieren.

Entscheiden muss das aber Rudi, das Makefile liegt in seinem Verantwortungsbereich.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Shortie

Ich paketiere es damit es nicht an der Paketverwaltung vorbei ins System installiert wird. Die neuen Pakete erstelle ich automatisch in einem Docker Container (nicht nur fhem sondern auch einige andere, da ich Arch Linux auch auf meinem Laptop, Desktop und Server einsetze). So kann ich dann auch exakt den gleichen Zustand für fhem Tests auf meinem Laptop installieren.