Eigenes Plugin compilieren
-
- Developer
- Beiträge: 467
- Registriert: Dienstag 15. Juli 2003, 10:58
Eigenes Plugin compilieren
Hallo, schlagt mich aber ich habe keinen Plan.
Ich habe mir ein Plugin geschrieben.
Das Plugin liegt nun unter /apps/tuxbox/plugins/flasher
In der Makefile.am unter plugins/ habe ich den Ordner hinzugefügt.
Der Pluginordner (flasher) enthällt auch eine eigene Makefile.am
Jetz dachte ich, dass ein make plugins reichen würde.
Leider falsch gedacht.
Könnte mir jemanden den Weg zum eigenen Plugin kurz erklären?
Danke und Gruß
Ich habe mir ein Plugin geschrieben.
Das Plugin liegt nun unter /apps/tuxbox/plugins/flasher
In der Makefile.am unter plugins/ habe ich den Ordner hinzugefügt.
Der Pluginordner (flasher) enthällt auch eine eigene Makefile.am
Jetz dachte ich, dass ein make plugins reichen würde.
Leider falsch gedacht.
Könnte mir jemanden den Weg zum eigenen Plugin kurz erklären?
Danke und Gruß
-
- Developer
- Beiträge: 2183
- Registriert: Mittwoch 10. Dezember 2003, 07:59
-
- Neugieriger
- Beiträge: 9
- Registriert: Freitag 10. Juli 2009, 00:48
Re: Eigenes Plugin compilieren
Hallo zusammen,
ist ja schon älter der Thread aber trifft mein Problem genau,
Ordner unter plugins erstellt. Eine makefile.am im neuen Ordner erstellt. Im plugin Verzeichnis configure.ac geändert, die makefile.am geändert.
rm ../apps/tuxbox/plugins/config.status (ok)
rm .deps/plugins (gibt es nicht im Verzeichnis)
make .deps/plugins (keine Regel um ...)
Habe die Anleitung aus der wiki genommen.
Helft mit bitte auf die Sprünge
ist ja schon älter der Thread aber trifft mein Problem genau,
Ordner unter plugins erstellt. Eine makefile.am im neuen Ordner erstellt. Im plugin Verzeichnis configure.ac geändert, die makefile.am geändert.
rm ../apps/tuxbox/plugins/config.status (ok)
rm .deps/plugins (gibt es nicht im Verzeichnis)
make .deps/plugins (keine Regel um ...)
Habe die Anleitung aus der wiki genommen.
Helft mit bitte auf die Sprünge
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
Die obige Anleitung war wohl für oldmake, mit newmake
funktioniert das nicht mehr. Damit ich Dir besser helfen
kann, poste bitte Deinen Patch für configure/Makefile.am
funktioniert das nicht mehr. Damit ich Dir besser helfen
kann, poste bitte Deinen Patch für configure/Makefile.am
-
- Neugieriger
- Beiträge: 9
- Registriert: Freitag 10. Juli 2009, 00:48
Re: Eigenes Plugin compilieren
Hi,
hier ist die makefile.am die in plugins/test liegt
hier ist die makefile.am die in plugins/test liegt
Hier der Teil der configure.acAM_CPPFLAGS = \
@FREETYPE_CFLAGS@ \
-I$(top_srcdir)/include
noinst_LTLIBRARIES = test.la
testplugin_la_SOURCES = test.c
if BOXTYPE_DREAMBOX
lockfb_la_CFLAGS = -DOLDFT
endif
lockfb_la_LIBADD = \
@FREETYPE_LIBS@
lockfb_la_LDFLAGS = -rpath $(PLUGINDIR) -module -avoid-version
install-exec-local:
install -d $(DESTDIR)$(PLUGINDIR)
install -d $(DESTDIR)$(CONFIGDIR)
install -d $(DESTDIR)$(CONFIGDIR)/test
$(LIBTOOL) --mode=install install test.la $(DESTDIR)$(PLUGINDIR)
Hier die makefile.am im Ordner pluginsvncviewer/Makefile
vncviewer/rfb/Makefile
test/Makefile mein Eintrag
pip/Makefile
mosaic/Makefile
AUTOMAKE_OPTIONS = gnu
if BOXTYPE_DREAMBOX
SUBDIRS = \
include tuxmail tuxtxt tuxcom tuxcal fx2 vncviewer enigma pip mosaic test
else
SUBDIRS = \
include tuxmail tuxtxt tuxcom tuxcal fx2 vncviewer enigma pluginx test
endif
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = \
tuxbox-plugins.pc
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
So wie ich es sehe, musst Du für Dein Plugin noch make targets
in cdk/make/plugins.mk (Format selbsterklärend) anlegen,
da "make plugins" nur eine vordefinierte Liste von Plugins
kompiliert. Der Rest Deiner Patches ist schon in Ordnung.
in cdk/make/plugins.mk (Format selbsterklärend) anlegen,
da "make plugins" nur eine vordefinierte Liste von Plugins
kompiliert. Der Rest Deiner Patches ist schon in Ordnung.
-
- Neugieriger
- Beiträge: 9
- Registriert: Freitag 10. Juli 2009, 00:48
Re: Eigenes Plugin compilieren
Danke probier ich gleich mal aus,
Melde dann obs geht.
Melde dann obs geht.
-
- Neugieriger
- Beiträge: 9
- Registriert: Freitag 10. Juli 2009, 00:48
Re: Eigenes Plugin compilieren
Danke hat geklappt, hab dabei gleich was über die makefile struktur gelernt
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Vorsichtig frage ich mal. Muss der Ordner make in cdk schon existieren oder muss ich den selbst anlegen den ich habe den nicht und wie schon erwähnt wie im wiki beschriebn geht es nicht mehr. Jedoch hatte ich damals auch newmake genutz und mit der Wiki Anleitung gebaut die angeblich an oldmake sich orientiert.
Liegt der Sinn der umstellung darin eigene Plugins explizit zu bauen und nicht immer alles ?
Martin
Liegt der Sinn der umstellung darin eigene Plugins explizit zu bauen und nicht immer alles ?
Martin
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
Ja.MPC823 hat geschrieben:Muss der Ordner make in cdk schon existieren
Erstelle bitte ein leeres Verzeichnis, dort rufst Du folgenden Befehl auf:
Code: Alles auswählen
cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z9 co -f -P .
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Konnte das Problem daran liegen das ich mich beim auschecken an die Anleitung im http://wiki.tuxbox.org/wiki/index ... tellen#CVSWiki gehalten habe ?
Gruss MartinCVS
cvs -d anoncvs@cvs.tuxbox-cvs.sourceforge.net:/cvs/tuxbox -z3 co -P .
Für ein Update der Quellen, diesen Befehl verwenden:
cvs -z3 -d anoncvs@cvs.tuxbox-cvs.sourceforge.net:/cvs/tuxbox up -dP .
Hinweis: Es ist durchaus sinnvoll wegen des Traffics möglichst nur ein Update zu machen, als jedesmal komplett auszuchecken!
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Wie wäre den der Vorschlag das CVS zu erweitern :
Ein Testplugin das als Vorlage für eigene Plugins verwendet werden kann mit eigenenem Zweig BSP "make userplugins" das dann auf belieben erweitert werden kann.
Das Testplugin um eine Gui zu "malen" habe ich schon fast fertig
Martin
Ein Testplugin das als Vorlage für eigene Plugins verwendet werden kann mit eigenenem Zweig BSP "make userplugins" das dann auf belieben erweitert werden kann.
Das Testplugin um eine Gui zu "malen" habe ich schon fast fertig
Martin
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
Die Zahl neuer Plugins in den letzten Monaten/Jahren ist nicht
allzu groß gewesen. Ehrlich gesagt sehe ich den Sinn für ein
Beispielplugin nicht, da die bestehenden Plugins genügend
Anschauungsmaterial liefern. Außerdem können Plugins sich
bzgl. der Abhängigkeiten und damit einhergehender
Besonderheiten so voneinander unterscheiden, dass ein
Beispiel nicht ausreichen wird, um die Implementierung
besser zu erklären als die bereits vorhandenen Plugins.
Dein CVS-checkout-Befehl ist richtig, das Verzeichnis
cdk/make/ muss also bei Dir auf der Platte sein.
Suche mal global nach der Datei plugins.mk.
allzu groß gewesen. Ehrlich gesagt sehe ich den Sinn für ein
Beispielplugin nicht, da die bestehenden Plugins genügend
Anschauungsmaterial liefern. Außerdem können Plugins sich
bzgl. der Abhängigkeiten und damit einhergehender
Besonderheiten so voneinander unterscheiden, dass ein
Beispiel nicht ausreichen wird, um die Implementierung
besser zu erklären als die bereits vorhandenen Plugins.
Dein CVS-checkout-Befehl ist richtig, das Verzeichnis
cdk/make/ muss also bei Dir auf der Platte sein.
Suche mal global nach der Datei plugins.mk.
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Gut da war wohl gestern der Wald dem Baum im Weg. Bin da wohl ein wenig ins straucheln gekommen.
Aber ein update als Howto fürs wiki wäre trotzdem nicht schlecht sagen ich mal . Zuminest wäre ein Hinweis das es mit Newmake nicht mehr so geht sicherlich Sinnvoll.
Gehen tuts bei mir immer noch nicht liegt aber vermutlich daran das ich makemässig sehr unbedarft bin.
Ich versuche mal step by step das nochmal zu machen und poste dann hier was ich gemacht habe wenns recht ist .
Martin
Aber ein update als Howto fürs wiki wäre trotzdem nicht schlecht sagen ich mal . Zuminest wäre ein Hinweis das es mit Newmake nicht mehr so geht sicherlich Sinnvoll.
Gehen tuts bei mir immer noch nicht liegt aber vermutlich daran das ich makemässig sehr unbedarft bin.
Ich versuche mal step by step das nochmal zu machen und poste dann hier was ich gemacht habe wenns recht ist .
Martin
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
Welche Wiki-Seite meinst Du genau?MPC823 hat geschrieben:wie im wiki beschriebn geht es nicht mehr.
Was genau geht nicht mehr?
Wenn Du eine allgemeine Kompilieranleitung haben möchtest,
dann schau auch mal hier vorbei:
http://forum.tuxbox-cvs.sourceforge.net ... 05#p364805
newmake ist mittlerweile CVS HEAD geworden, alle Anleitungen
für newmake gelten weiterhin, bis auf den CVS-checkout-Befehl.
Dessen richtige Variante ist hier im Thread bereits gepostet
worden und dürfte somit als Fehlerquelle auf Deiner Seite
wegfallen.
Ach ja, ich bin ehrlicherweise faul, was das Schreiben von
Dokus angeht, mein VMWare-Howto ist die Ausnahme.
Wenn jemand möchte, kann der Inhalt des Howtos gerne
ins Wiki übernommen werden, mir fehlt dazu die Motivation
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Ich meinte die Seite im Wiki Tutorial http://wiki.tuxbox.org/wiki/index ... s:Tutorial und so klappt es ja nicht mehr bzw kann es nicht mehr gehen.
Martin
Martin
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
Stimmt, das ist für oldmake:
http://wiki.tuxbox-cvs.sourceforge.net/ ... es_Plugins
http://wiki.tuxbox-cvs.sourceforge.net/ ... es_Plugins
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Was ich nun gemacht habe. Wie im Wiki beschrieben das müsste noch gleich sein
1) in ...../tuxbox/apps/tuxbox/plugins/ ein ordner test1 angelegt
2) dort vier Dateien abgespeichert
a)testplugin.cfg
b)testplugin.h
c)testplugin.c
d)Makefile.am
3) im Verzeichnis ...../tuxbox/apps/tuxbox/plugins die Dateien editiert
a) :configure.ac :
b:) Makefile.am
4)in ...../tuxbox/cdk/make die Datei plugins.mk editiert
5) autogen und configure neu aufgerufen
6) make plugins-user
dann kommt
so weit gehts nun
Martin
1) in ...../tuxbox/apps/tuxbox/plugins/ ein ordner test1 angelegt
2) dort vier Dateien abgespeichert
a)testplugin.cfg
Code: Alles auswählen
type=2
name=Testplugin
desc=Test zur Pluginerstellung
needfb=0
needlcd=0
needrc=0
needoffsets=0
Code: Alles auswählen
include "stdio.h"
#include "plugin.h"
Code: Alles auswählen
#include "testplugin.h"
void plugin_exec(PluginParam *par)
{
printf("Hallo Welt\n");
return;
}
Code: Alles auswählen
AM_CPPFLAGS = \
@FREETYPE_CFLAGS@ \
-I$(top_srcdir)/include
noinst_LTLIBRARIES = testplugin.la
testplugin_la_SOURCES = testplugin.c
if BOXTYPE_DREAMBOX
testplugin_la_CFLAGS = -DOLDFT
endif
testplugin_la_LIBADD = \
@FREETYPE_LIBS@
testplugin_la_LDFLAGS = -rpath $(PLUGINDIR) -module -avoid-version
install-exec-local:
install -d $(DESTDIR)$(PLUGINDIR)
install -d $(DESTDIR)$(CONFIGDIR)
install -d $(DESTDIR)$(CONFIGDIR)/testplugin
$(LIBTOOL) --mode=install install testplugin.la $(DESTDIR)$(PLUGINDIR)
install -m 0644 $(srcdir)/testplugin.cfg $(DESTDIR)$(PLUGINDIR)
a) :configure.ac :
Code: Alles auswählen
vncviewer/rfb/Makefile
[color=#FF0000]test1/Makefile [/color]
dvbsub/Makefile
Code: Alles auswählen
AUTOMAKE_OPTIONS = gnu
SUBDIRS = \
include tuxmail tuxtxt tuxcom tuxcal tuxclock fx2 vncviewer enigma [color=#FF0000]test1[/color]
if BOXTYPE_DREAMBOX
4)in ...../tuxbox/cdk/make die Datei plugins.mk editiert
Code: Alles auswählen
tuxmail: libfreetype $(appsdir)/tuxbox/plugins/config.status
$(MAKE) -C $(appsdir)/tuxbox/plugins/tuxmail all install
if TARGETRULESET_FLASH
flash-tuxmail: libfreetype $(appsdir)/tuxbox/plugins/config.status | $(flashprefix)/root
$(MAKE) -C $(appsdir)/tuxbox/plugins/tuxmail all install prefix=$(flashprefix)/root
@FLASHROOTDIR_MODIFIED@
endif
[color=#FF0000]plugins-user: test1
test1: $(appsdir)/tuxbox/plugins/config.status
$(MAKE) -C $(appsdir)/tuxbox/plugins/test1 all install
if TARGETRULESET_FLASH
flash-test1: $(appsdir)/tuxbox/plugins/config.status | $(flashprefix)/root
$(MAKE) -C $(appsdir)/tuxbox/plugins/test1 all install prefix=$(flashprefix)/root
@FLASHROOTDIR_MODIFIED@
endif[/color]
pluginx: $(appsdir)/tuxbox/plugins/config.status
$(MAKE) -C $(appsdir)/tuxbox/plugins/pluginx all install
i
6) make plugins-user
dann kommt
Ich hatte ja auch keine Regel all im Makefile eingetragen ich dachte/glaubte all macht dann einfach "all" (Glauben heißt nicht wissen)martin@Mac-Mini:~/dbox-neutrino/tuxbox/cdk$ make plugins-user
make -C /home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1 all install
make[1]: Entering directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make[1]: *** Keine Regel, um »all« zu erstellen. Schluss.
make[1]: Leaving directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make: *** [test1] Fehler 2
so weit gehts nun
Martin
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
apps/tuxbox/plugins/config.status vorher gelöscht, einMPC823 hat geschrieben:5) autogen und configure neu aufgerufen
clean-target aufgerufen oder, noch besser, in ein leeres
Verzeichnis den CVS-Code kopiert, Deine Patches eingespielt
und dann erst autogen.sh && cdk/configure aufgerufen?
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Muss ich clean target unbedingt machen und wenn ja welches der clean targets wäre gerade noch ausreichend (minimales löschen) ?
ohne das clean bekomme ich nun
P.S Vielen dank für Deine Hilfe Rhabarber
ohne das clean bekomme ich nun
Martinmake -C /home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1 all install
make[1]: Entering directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make[1]: *** Keine Regel vorhanden, um das Target »testplugin.c«,
benötigt von »testplugin_la-testplugin.lo«, zu erstellen. Schluss.
make[1]: Leaving directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make: *** [test1] Fehler 2
martin@Mac-Mini:~/dbox-neutrino/tuxbox/cdk$
P.S Vielen dank für Deine Hilfe Rhabarber
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Eigenes Plugin compilieren
Probier das:
rm /home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/config.status
make test1
rm /home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/config.status
make test1
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Gleiches Problem
[quote][make -C /home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1 all install
make[1]: Entering directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make[1]: *** Keine Regel vorhanden, um das Target »testplugin.c«,
benötigt von »testplugin_la-testplugin.lo«, zu erstellen. Schluss.
make[1]: Leaving directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make: *** [test1] Fehler 2
martin@Mac-Mini:~/dbox-neutrino/tuxbox/cdk$
/quote]
was ja schon mal zeigt das die Änderum in plugins.mk vermutlich richtig wären
[quote][make -C /home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1 all install
make[1]: Entering directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make[1]: *** Keine Regel vorhanden, um das Target »testplugin.c«,
benötigt von »testplugin_la-testplugin.lo«, zu erstellen. Schluss.
make[1]: Leaving directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make: *** [test1] Fehler 2
martin@Mac-Mini:~/dbox-neutrino/tuxbox/cdk$
/quote]
was ja schon mal zeigt das die Änderum in plugins.mk vermutlich richtig wären
-
- Foren-Moderator
- Beiträge: 297
- Registriert: Montag 11. Oktober 2004, 14:51
Re: Eigenes Plugin compilieren
Hi Martin,MPC823 hat geschrieben:Gleiches Problem[make -C /home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1 all install
make[1]: Entering directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make[1]: *** Keine Regel vorhanden, um das Target »testplugin.c«,
benötigt von »testplugin_la-testplugin.lo«, zu erstellen. Schluss.
make[1]: Leaving directory `/home/martin/dbox-neutrino/tuxbox/apps/tuxbox/plugins/test1'
make: *** [test1] Fehler 2
martin@Mac-Mini:~/dbox-neutrino/tuxbox/cdk$
/quote]
was ja schon mal zeigt das die Änderum in plugins.mk vermutlich richtig wären
bist du sicher, daß die testplugin.c _genau so_ existiert ?
Nicht das da ein Typo drin ist ?
Sonst sieht das gut aus
-
- Erleuchteter
- Beiträge: 448
- Registriert: Samstag 26. November 2005, 00:35
Re: Eigenes Plugin compilieren
Also ich habe es nun mir 4 mal angeschaut und auch nach längerer Pause sehe ich keinen Fehler bezüglich buchstaben oder gross und klein mich wundert es echt
kann es sein das es probleme gibt weil ich das testplugin im ordner test1 habe oder evenetuell mit unicode utf8
Also im augenblick dreht sich alles.
Martin
kann es sein das es probleme gibt weil ich das testplugin im ordner test1 habe oder evenetuell mit unicode utf8
Also im augenblick dreht sich alles.
Martin