Nachdem ich mich schon hier und da eingelesen habe, soll es für den Anfang ein "Hallo Welt" Plugin werden.
Leider muste ich feststellen dass ich vor dem Begin der eigentlichen Programmierung mich intensiv mit der ganzen make Sache beschäftigen musste... und ich immer noch nicht den genauen Plan habe.
Ich hoffe ich darf in diesem Thread ein paar doofe Fragen stellen und bitte nicht gleich hauen wenn diese ganz trivial sind...
Und hier schon die erste. Folgende Dateien habe ich erstellt:
testplugin.h
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
CC = /home/bellum/tuxbox/dbox2/cdk/bin/powerpc-tuxbox-linux-gnu-gcc
CC_FLAGS = -Wall -Wextra -O2 -I/home/bellum/tuxbox/dbox2/cdkroot/include -I/home/bellum/tuxbox/tuxbox-cvs/apps/tuxbox/plugins/include
plugintest: testplugin.c testplugin.h
$(CC) $(CC_FLAGS) -o testplugin.so testplugin.c
Code: Alles auswählen
/home/bellum/tuxbox/dbox2/cdk/bin/powerpc-tuxbox-linux-gnu-gcc -Wall -Wextra -O2 -I/home/bellum/tuxbox/dbox2/cdkroot/include -I/home/bellum/tuxbox/tuxbox-cvs/apps/tuxbox/plugins/include -o testplugin.so testplugin.c
testplugin.c:3: warning: unused parameter 'par'
/home/bellum/tuxbox/cvs/dbox2_100320/cdk/bin/../lib/gcc/powerpc-tuxbox-linux-gnu/3.4.6/../../../../powerpc-tuxbox-linux-gnu/lib/nof/crt1.o:(.rodata+0x4): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [plugintest] Error 1
Tatsächlich wenn ich void plugin_exec(PluginParam *par) durch void main() ersetze baut er und das erzeugte Programm funktioniert sogar auf der dbox.
Was muss ich aber tun um ein PlugIn zu erzeugen. Ich schätze da muss was am Makefile gedreht werden aber ich weiß leider nicht was...
Danke schon mal im Voraus für die Hilfe
Gruß bellum