On Wed, Jan 9, 2013 at 3:56 AM, Gustavo Sverzut Barbieri <[email protected]> wrote: > On Tue, Jan 8, 2013 at 7:14 AM, Arvind R <[email protected]> wrote: > >> On Tue, Jan 8, 2013 at 2:18 AM, Gustavo Sverzut Barbieri >> <[email protected]> wrote: >> > On Mon, Jan 7, 2013 at 9:14 AM, Arvind R <[email protected]> wrote: >> > >> >> Hi all, >> >> >> >> After getting xine backend working in emotion, tried generic (vlc) >> >> backend. Nope - doesn't work -:( >> >> >> >> Problem 1: Using the example source, now need to add: >> >> emotion_object_module_option_set(em, "player", "vlc"); >> >> >> >> It does not fall-back to the default generic player. >> >> >> >> Problem 2: >> >> em_player_vlc cannot be found, because generic_module_init() fails to >> >> set the prefixes proper. >> >> >> >> So put printf() and recompiled. (Is there is a small howto on the eina >> >> logging system?) Output: >> >> >> >> evas engine: <auto> >> >> emotion backend: generic >> >> vis: 0 >> >> geometry: 0 0 960x540 >> >> generic_module_init: initing libdir to /usr/lib/x86_64-linux-gnu >> >> >> > >> > this seems wrong already, is it PACKAGE_LIB_DIR? why does it contain >> > x86_64-linux-gnu? in Makefile.am it's just $(libdir), did you specify >> > something with --libdir? >> > >> Yes. '$prefix/lib/$DEB_ARCH. The x86_64-linux-gnu is correct. >> > >> > >> >> generic_module_init: got libdir /usr/lib/lib >> >> >> > >> > yet another very weird result. double "lib" in the path? Where are you >> > installing these things? >> > >> > eina_prefix_new() will use the given symbol (emotion_object_add) and >> dladdr >> > to know which file it came from. Should be the libemotion.so. Then it >> gets >> > the directory where libemotion.so is contained, should be /usr/lib if >> it's >> > /usr/lib/libemotion.so. Then it will remove the "lib" part to get the >> > prefix, later adding this again (this is what it should do, did not test >> to >> > see if it's correct). >> > >> Ah-ah! The logic is IMHO, wrong! My installation is a multiarch debian >> install. The x86_64 libdir is '/usr/lib/x86_64-linux-gnu' and 32-bit >> version in 'usr/lib32' on a x86_64-linux-gnu system and '/usr/lib/' on >> a 'x86-linux-gnu' system. The modules get installed in sub-dirs of the >> library, e.g. libemotion.so gets installed in >> '/usr/lib/x86_64-linux-gnu/' and emotion modules in >> '/usr/lib/x86_64-linux-gnu/emotion/'. >> > > ok, got it and from this commit it seems to be handled > http://trac.enlightenment.org/e/changeset/74709 > > (I mean the message, not the logic, will check that later). > > > >> This makes the 'MODULE_ARCH' variable in autoconf files unnecessary; >> > > not really as it also includes efl version. Also will allow installing to > shared /usr, like NFS used by multiple platforms (ppc, x86...)... in > theory, because in practice half of EFL doesn't conform with that (emotion, > ecore_imf, eeze/sensors, evas cserve2 binaries, efreet binaries...). I plan > to fix those soon. > Maybe --enable-versioned-install? Anyway, what i mean is install the modules in a sub-directory of libdir. I have evas|ecore-evas|... installed in /usr/lib/x86_64-linux-gnu/evas|ecore-evas|... ; not in /usr/lib/e.../x86_64-linux-gnu.
Maybe make versioned-install an option? > > >> and, as I have on my system (untested -:(), a lib32 AND a x86_64 >> installation possible. This will conform to most packaging systems >> AFAIK, and definitely to Debian. >> If the logic is modified to scan from right to left the absence of >> '^lib' substring to get the prefix, and later add ALL the subsequent >> parts, all will be fine. Better still, have eina_prefix_new take the >> $PREFIX value too to enable a left-to-right scan. >> > > > I'll check the logic, but it's worth for you to check if you have that > patch in your version. > The changeset is there in eina. The problem showed up while I was debugging emotion. svn81558 did not have the problem - it showed up svn82296 of emotion. The previous (81558) loaded the em_generic_vlc all right, but 82296 does not find it due to the /usr/lib/lib . I presume the use of eina_prefix_new in emotion is new, and it breaks it. Arvind ------------------------------------------------------------------------------ Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery and much more. Keep your Java skills current with LearnJavaNow - 200+ hours of step-by-step video tutorials by Java experts. SALE $49.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122612 _______________________________________________ enlightenment-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-users
