How to build a Enigma2 library file .so for example sevicets.so?

  • How to build a Enigma2 library file .so for a plugin for cvs ?


    Where to put the source files and an example .bb please ?


    Regrds, pcd.

    Einmal editiert, zuletzt von pcd ()

  • Nobody replies ? :frowning_face:


    I explain better :-


    The enigma2-plugin Vlcplayer source comes with a mipsel servicets.so. I want to make a powerpc servicets.so.


    Of course I can patch enigma2 with the servicets source .cpp and .h and run another version of Vlcplayer which does not need servicets.so. But I am curious as to how the mipsel .so was made. Bitbake of enigma2-plugins does not make this file.


    Regards, pcd.

    Einmal editiert, zuletzt von pcd ()

  • I think, this can help...



    LINK

  • pcd
    when you build enigma2-plugins in the oe after you build the enigma2. The serivicets.so will also build in enigma2-plugins. When you will bild it outside bb you must add the enigma2/include in you source tree. Thake a look to the makefile in vlcplayer/servicets


    Best regards,


    nobody611

  • Zitat

    Originally posted by nobody611
    pcd
    when you build enigma2-plugins in the oe after you build the enigma2. The serivicets.so will also build in enigma2-plugins. When you will bild it outside bb you must add the enigma2/include in you source tree. Thake a look to the makefile in vlcplayer/servicets


    Best regards,


    nobody611


    Perhaps the Makefile.am I downloaded is wrong ! It has the following lines only :-


    servicets.so: servicets.cpp servicets.h
    $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(ENIGMA2_CFLAGS) $(SIGC_CFLAGS) \
    $(PYTHON_CPPFLAGS) $(DEFS) -I. -Wall -W servicets.cpp -shared -fPIC \
    -Wl,-soname,servicets.so -o servicets.so $(LDFLAGS)


    Regards, pcd.


    all: servicets.so


    CLEANFILES = servicets.so

  • Hi nobody611,


    Thank you very much. I was able to make the .so file with your Makefile.am. I will check it with the vlcplayer plugin soon.


    Thanks also to marthom. I will study the text.


    Regards, pcd.

  • Zitat


    when you build enigma2-plugins in the oe after you build the enigma2. The serivicets.so will also build in enigma2-plugins.


    That's actually something that has to be fixed.
    There is the dependency loop between enigma2 and enigma2-plugins.
    enigma2 depends on enigma2-plugins, so the first time enigma2-plugins is built, it won't have the e2 includes.
    The second time you build, the e2 includes have been staged, but you risk building against an old version (the new version won't be staged till after e2-plugins have been built)

  • solution for the dependency loop is to move PACKAGES_DYNAMIC from e2 to e2-plugins, add a dependency for e2 to e2-plugins, and remove e2's dependency for e2-plugins.


    Because of the e2 dependancy, enigma2-plugins* will be fully satisfied by building e2-plugins (as indicated by PACKAGES_DYNAMIC)