Hello all,

first of all let me explain what I am trying to accomplish; my goal at
this moment is to get Enna <http://enna.geexbox.org> up and running on a
mipsel-box (media player box based on a RTD1073 (Realtek) chipset - some
tech info  on the CPU
<http://opensource.eminent-online.com/wiki/index.php/EM7080_Tech> ).
(standard firmware/application that runs on these boxes lacks a lot of
'standard' features, that I see present in Enna)

Enna is based on EFL; therefore I am trying to get them running on this
box. I am cross-compiling the libraries using the toolchain provided by
Asus (box with same chipset - mipsel toolchain based on gcc 3.4.4 ).

I also managed to get SDL2 - without GL (no support on this device) -
working on this device (the SDL2 examples work fine and produce nice
output on the TV set). So I am trying to get EFL working with SDL2 (no X
or whatsoever on this device).

My compile order is:
- eina-1.1.0
- eet-1.5.0
- evas_generic_loaders-1.1.0
- evas-1.1.0
- ecore-1.1.0
- e_dbus-1.1.0
- embryo-1.1.0
- edje-1.1.0
- efreet-1.1.0
- ethumb-0.1.1.65643
- expedite-1.1.0
- elementary-0.8.0.65643

Apart from some manual patches I applied (to use the SDL2 headers and API
instead of SDL1.2 or SDL1.3 API), these are the sources available from the
download page.

My standard configure script I use looks like this:
#!/bin/sh
export AR_FLAGS='cru'
export CFLAGS='-pipe -O2  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-D_FILE_OFFSET_BITS=64 -msoft-float -mips32
-Wl,-rpath=/usr/local/etc/ketlaer/lib'
export LDFLAGS="-L/usr/local/etc/ketlaer/lib"
export CPPFLAGS="-I/usr/local/etc/ketlaer/include"
export PKG_CONFIG_LIBDIR="/usr/local/etc/ketlaer/lib/pkgconfig/"
./configure --prefix=$KETLAER --host=mipsel-linux
--with-other-options-depending-on-lib

I also (try to) compile the tests and examples from each lib to see how
far I get without any issues. E.g. Apart from eina_hash_06 which
segfaults, all other eina examples work great. But now I am stuck with the
following error (I also did 'export EINA_LOG_LEVELS=eina_module:4' before
running these examples).

================================
/usr/local/etc/ketlaer/share/elementary/examples # ./calendar_example_01
DBG<1633>:eina_module eina_module.c:570 eina_module_list_load() array
0x10001730, count 0
DBG<1633>:eina_module eina_module.c:570 eina_module_list_load() array
0x10018950, count 0
CRI<1633>:elementary elm_win.c:1404 elm_win_add() Sofware X11 engine
creation failed. Trying default.
DBG<1633>:eina_module eina_module.c:300 eina_module_new() m=0x10024068,
file=/usr/local/etc/ketlaer/lib/evas/modules/engines/software_sdl/linux-gnu-mipsel-1.1.0/module.so
DBG<1633>:eina_module eina_module.c:327 eina_module_load() m=0x10024068,
handle=(nil),
file=/usr/local/etc/ketlaer/lib/evas/modules/engines/software_sdl/linux-gnu-mipsel-1.1.0/module.so,
refs=0
DBG<1633>:eina_module eina_module.c:353 eina_module_load() successfully
loaded
/usr/local/etc/ketlaer/lib/evas/modules/engines/software_sdl/linux-gnu-mipsel-1.1.0/module.so
DBG<1633>:eina_module eina_module.c:357 eina_module_load() ref 1
DBG<1633>:eina_module eina_module.c:300 eina_module_new() m=0x10024688,
file=/usr/local/etc/ketlaer/lib/evas/modules/engines/software_generic/linux-gnu-mipsel-1.1.0/module.so
DBG<1633>:eina_module eina_module.c:327 eina_module_load() m=0x10024688,
handle=(nil),
file=/usr/local/etc/ketlaer/lib/evas/modules/engines/software_generic/linux-gnu-mipsel-1.1.0/module.so,
refs=0
WRN<1633>:eina_module eina_module.c:348 eina_module_load() could not find
eina's entry symbol __eina_module_init inside module
/usr/local/etc/ketlaer/lib/evas/modules/engines/software_generic/linux-gnu-mipsel-1.1.0/module.so
DBG<1633>:eina_module eina_module.c:309 eina_module_free() m=0x10024688,
handle=(nil),
file=/usr/local/etc/ketlaer/lib/evas/modules/engines/software_generic/linux-gnu-mipsel-1.1.0/module.so,
refs=0
ERR<1633>:ecore_evas ecore_evas_sdl.c:412 _ecore_evas_internal_sdl_new()
evas_engine_info_set() init engine 'sdl' failed.
ERR<1633>: eina_hash.c:1017 eina_hash_del() safety check failed: hash == NULL
Segmentation fault (core dumped)
================================

This was already a major leap forward since before this I was getting
'File not found' errors from dlopen which were related to some missing
dependencies in other libs. Uninstalled the already compiled libs (EFL),
solved the missing dependencies and started again from scratch with EFL.
But now I am getting the above error.

I then did a 'nm -D' on this module (see below); it seems to me that
'__eina_module_init' exists in this module, but why does eina complain
about not finding this symbol?

Anybody some clues / hints on what to try next to solve this module
loading problem?
Just let me know if you require more info ...

I am hoping I am almost there...

Thanks in advance,
Kind regards,
Erwin Hermans

PS: output of some commands...

================================
nm -D
/usr/local/etc/ketlaer/lib/evas/modules/engines/software_generic/linux-gnu-mipsel-1.1.0/module.so
         U EINA_LOG_DOMAIN_GLOBAL
000000cc A _DYNAMIC
00044b30 A _GLOBAL_OFFSET_TABLE_
         w _Jv_RegisterClasses
00044cc0 A __bss_start
         w __cxa_finalize
         w __deregister_frame_info
00044934 D __eina_module_init
00044930 D __eina_module_shutdown
         w __register_frame_info
00044cc0 A _edata
00044cf0 A _end
00044cc0 A _fbss
00044910 D _fdata
000047e0 T _fini
00001bb0 T _ftext
0004cb20 A _gp
00001b28 T _init
         U abort
         U eina_cpu_count
         U eina_log_domain_register
         U eina_log_domain_unregister
         U eina_log_print
         U evas_cache_image_alone
         U evas_cache_image_colorspace
         U evas_cache_image_copied_data
         U evas_cache_image_data
         U evas_cache_image_dirty
         U evas_cache_image_drop
         U evas_cache_image_load_data
         U evas_cache_image_pixels
         U evas_cache_image_preload_cancel
         U evas_cache_image_preload_data
         U evas_cache_image_size_set
         U evas_common_cpu_end_opt
         U evas_common_draw_context_add_cutout
         U evas_common_draw_context_clear_cutouts
         U evas_common_draw_context_clip_clip
         U evas_common_draw_context_free
         U evas_common_draw_context_new
         U evas_common_draw_context_set_anti_alias
         U evas_common_draw_context_set_clip
         U evas_common_draw_context_set_color
         U evas_common_draw_context_set_color_interpolation
         U evas_common_draw_context_set_mask
         U evas_common_draw_context_set_multiplier
         U evas_common_draw_context_set_render_op
         U evas_common_draw_context_unset_clip
         U evas_common_draw_context_unset_mask
         U evas_common_draw_context_unset_multiplier
         U evas_common_font_add
         U evas_common_font_ascent_get
         U evas_common_font_cache_get
         U evas_common_font_cache_set
         U evas_common_font_descent_get
         U evas_common_font_draw
         U evas_common_font_flush
         U evas_common_font_font_all_unload
         U evas_common_font_free
         U evas_common_font_hinting_set
         U evas_common_font_load
         U evas_common_font_max_ascent_get
         U evas_common_font_max_descent_get
         U evas_common_font_memory_add
         U evas_common_font_memory_load
         U evas_common_font_query_advance
         U evas_common_font_query_char_at_coords
         U evas_common_font_query_char_coords
         U evas_common_font_query_inset
         U evas_common_font_query_last_up_to_pos
         U evas_common_font_query_pen_coords
         U evas_common_font_query_right_inset
         U evas_common_font_query_run_font_end_get
         U evas_common_font_query_size
         U evas_common_hinting_available
         U evas_common_image_cache_get
         U evas_common_image_colorspace_dirty
         U evas_common_image_get_cache
         U evas_common_image_image_all_unload
         U evas_common_image_set_cache
         U evas_common_line_draw
         U evas_common_load_image_from_file
         U evas_common_load_rgba_image_frame_duration_from_file
         U evas_common_map_rgba
         U evas_common_polygon_draw
         U evas_common_polygon_point_add
         U evas_common_polygon_points_clear
         U evas_common_rectangle_draw
         U evas_common_rgba_image_scalecache_do
         U evas_common_rgba_image_scalecache_flush
         U evas_common_rgba_image_scalecache_prepare
         U evas_common_rgba_image_scalecache_size_set
         U evas_common_text_props_content_create
00003450 T evas_engine_software_generic_init
0000348c T evas_engine_software_generic_shutdown
         U evas_module_register
         U evas_module_unregister
         U free
         U malloc
================================
readelf -d
/usr/local/etc/ketlaer/lib/evas/modules/engines/buffer/linux-gnu-mipsel-1.1.0/module.so


Dynamic section at offset 0xcc contains 29 entries:
  Tag        Type                         Name/Value
 0x00000001 (NEEDED)                     Shared library: [libevas.so.1]
 0x00000001 (NEEDED)                     Shared library: [libeina.so.1]
 0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]
 0x00000001 (NEEDED)                     Shared library: [libc.so.0]
 0x0000000e (SONAME)                     Library soname: [module.so]
 0x0000000f (RPATH)                      Library rpath:
[/usr/local/etc/ketlaer/lib]
 0x0000000c (INIT)                       0x101c
 0x0000000d (FINI)                       0x3750
 0x00000004 (HASH)                       0x1dc
 0x00000005 (STRTAB)                     0x91c
 0x00000006 (SYMTAB)                     0x42c
 0x0000000a (STRSZ)                      1529 (bytes)
 0x0000000b (SYMENT)                     16 (bytes)
 0x00000015 (DEBUG)                      0x0
 0x00000003 (PLTGOT)                     0x438d0
 0x00000011 (REL)                        0xfd4
 0x00000012 (RELSZ)                      72 (bytes)
 0x00000013 (RELENT)                     8 (bytes)
 0x70000001 (MIPS_RLD_VERSION)           1
 0x70000005 (MIPS_FLAGS)                 NOTPOT
 0x70000006 (MIPS_BASE_ADDRESS)          0
 0x7000000a (MIPS_LOCAL_GOTNO)           14
 0x70000011 (MIPS_SYMTABNO)              79
 0x70000012 (MIPS_UNREFEXTNO)            33
 0x70000013 (MIPS_GOTSYM)                0x1b
 0x6ffffffe (VERNEED)                    0xfb4
 0x6fffffff (VERNEEDNUM)                 1
 0x6ffffff0 (VERSYM)                     0xf16
 0x00000000 (NULL)                       0x0

================================


readelf -d
/usr/local/etc/ketlaer/lib/evas/modules/engines/software_sdl/linux-gnu-mipsel-1.1.0/module.so


Dynamic section at offset 0xcc contains 31 entries:
  Tag        Type                         Name/Value
 0x00000001 (NEEDED)                     Shared library: [libevas.so.1]
 0x00000001 (NEEDED)                     Shared library: [libeina.so.1]
 0x00000001 (NEEDED)                     Shared library: [libSDL2-2.0.so.0]
 0x00000001 (NEEDED)                     Shared library: [libpthread.so.0]
 0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]
 0x00000001 (NEEDED)                     Shared library: [libc.so.0]
 0x0000000e (SONAME)                     Library soname: [module.so]
 0x0000000f (RPATH)                      Library rpath:
[/usr/local/etc/ketlaer/lib]
 0x0000000c (INIT)                       0x1704
 0x0000000d (FINI)                       0x51f0
 0x00000004 (HASH)                       0x1ec
 0x00000005 (STRTAB)                     0xc60
 0x00000006 (SYMTAB)                     0x540
 0x0000000a (STRSZ)                      2312 (bytes)
 0x0000000b (SYMENT)                     16 (bytes)
 0x00000015 (DEBUG)                      0x0
 0x00000003 (PLTGOT)                     0x454a0
 0x00000011 (REL)                        0x166c
 0x00000012 (RELSZ)                      152 (bytes)
 0x00000013 (RELENT)                     8 (bytes)
 0x70000001 (MIPS_RLD_VERSION)           1
 0x70000005 (MIPS_FLAGS)                 NOTPOT
 0x70000006 (MIPS_BASE_ADDRESS)          0
 0x7000000a (MIPS_LOCAL_GOTNO)           14
 0x70000011 (MIPS_SYMTABNO)              114
 0x70000012 (MIPS_UNREFEXTNO)            34
 0x70000013 (MIPS_GOTSYM)                0x1c
 0x6ffffffe (VERNEED)                    0x164c
 0x6fffffff (VERNEEDNUM)                 1
 0x6ffffff0 (VERSYM)                     0x1568
 0x00000000 (NULL)                       0x0

================================



------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
enlightenment-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to