On Wed, Jan 9, 2013 at 10:28 PM, Gustavo Sverzut Barbieri
<barbi...@profusion.mobi> wrote:
> On Tue, Jan 8, 2013 at 11:24 PM, Arvind R <arvin...@gmail.com> wrote:
>
>> On Wed, Jan 9, 2013 at 5:56 AM, Arvind R <arvin...@gmail.com> wrote:
>> > On Wed, Jan 9, 2013 at 5:28 AM, Gustavo Sverzut Barbieri
>> > <barbi...@profusion.mobi> wrote:
>> >> On Tue, Jan 8, 2013 at 8:26 PM, Gustavo Sverzut Barbieri <
>> >> barbi...@profusion.mobi> wrote:
>> >>
>> >>> On Tue, Jan 8, 2013 at 7:14 AM, Arvind R <arvin...@gmail.com> wrote:
>> >>>
>> >>>> On Tue, Jan 8, 2013 at 2:18 AM, Gustavo Sverzut Barbieri
>> >>>> <barbi...@profusion.mobi> wrote:
>> >>>> > On Mon, Jan 7, 2013 at 9:14 AM, Arvind R <arvin...@gmail.com>
>> 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.
>> >>>
>> >>>
>> >>>
>> >>>> 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 logic assumes a magic file to check. That's why most libraries
>> started
>> >> to ship with "checkme" files.
>> >
>> > checkme files for eeze|efreet|ecore-imf|evas installed in /usr/share/
>> >>
>> >> I did a fix for single tree efl as r82429. It would be nice if someone
>> >> could backport this to stable branch.
>> >
>> > Will check with current tip.
>> >>
>> -:( Now have to set link from /usr/lib/emotion to
>> /usr/lib/x86_64-linux-gnu/emotion
>> Problem IMHO not fixed.
>>
>
>
> Hi,
>
> Would you let me know the configure line you pass? (You can get that from
> config.log file)
>
./configure --build=x86_64-linux-gnu --prefix=/usr
--includedir=${prefix}/include --mandir=${prefix}/share/man
--infodir=${prefix}/share/info --sysconfdir=/etc --localstatedir=/var
--libdir=${prefix}/lib/x86_64-linux-gnu
--libexecdir=${prefix}/lib/x86_64-linux-gnu --disable-maintainer-mode
--disable-dependency-tracking --disable-rpath --enable-static
--enable-doc

> What is strange right now is that if you're getting divergence as you said,
> likely the libraries are being compile with one --libdir= but the resulting
> binaries are being placed elsewhere. One case would be to compile with
> --libdir=/usr/lib (default) but the libraries are being (manually? dpkg?)
> copied to /usr/lib/$(ARCH). In that case the proper way would be to compile
> with --libdir=/usr/lib/$(ARCH).
>
I never compile manually. Using dpkg-buildpackage with debian/compat of 9.
I use a python script to update my local svn/git/hg, create a
build-directory, and build .deb packages. Could mail it if you want. I
do modify (using quilt, and patces in debian/patches) the configure
files to
1. read the micro-vesion from a file (.svnrev) in top-srcdir.
2. replace MODULE_ARCH in configure.ac with "." and remove them from
Makefile.ams. Need to set to "." in configure.ac because some code
uses the MODULE_ARCH definition

All the files are installed in correct places and because
efl/ethumb/emotion/elementary/terminology/e17/engage are all built
using the same script. Works well for E17, X, and my bleeding-edge
multi-media packages.

> I want to be able to reproduce the problem here so I can investigate and
> understand it better. My current fix is not that good, as now it will
> search too much :-/
Attaching my build script - DabE17. Hope you find it useful.

Arvind

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
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to