On Tue, 6 Mar 2012 09:26:56 +0100 [email protected] said:

i do not know what is wrong. this should work. the symbol seems exported. it
should work. it works everywhere else i see on x86, x86-64 and arm. dlsym() is
simply reporting that the symbol doesnt exist - maybe there is a ld.so limit on
number of shared libs able to be opened or something on mips? i really don't
know - i'm stretching here. but your core problem is the software_generic
module that all the software rendering modules depend on and load in addition
is missing a symbol necessary for it to function, even though nm reports its
there.

> 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
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [email protected]


------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
enlightenment-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to