Thanks for your quick reply. Mmh, that's strange. The modules are all
installed under /opt/click.ubuntu.com/pefl.maxperl/current/lib
(/opt/click.ubuntu.com/pefl.maxperl/current is the prefix I used when
compiling efl), so as you said, relative to the libs. The data files
are now also available at
/opt/click.ubuntu.com/pefl.maxperl/current/share. 

Is there a way to tell EFL where the modules are located (I’m already
using ELM_PREFIX in my startup script. Are there other important
environment variables (perhaps for evas, ecore etc)? These are the
relevant bits in the startup script:

´´´
APP_DIR="/opt/click.ubuntu.com/pefl.maxperl/current"
APP_ID="pefl.maxperl"

APP_HOME="/home/phablet/.local/share/${APP_ID}"
APP_CACHE="/home/phablet/.cache/${APP_ID}"
APP_CONFIG="/home/phablet/.config/${APP_ID}"

mkdir -p "$APP_HOME" "$APP_CACHE" "$APP_CONFIG"
mkdir -p "$APP_HOME/.cache/efreet"
mkdir -p "$APP_HOME/.elementary/config"

export HOME="$APP_HOME"
export XDG_DATA_HOME="$APP_HOME/.local/share"
export XDG_CACHE_HOME="$APP_CACHE"
export XDG_CONFIG_HOME="$APP_CONFIG"
export XDG_DATA_DIRS="$APP_DIR/share:/usr/local/share:/usr/share"
export XDG_RUNTIME_DIR="$APP_CACHE"

export ELM_PREFIX="$APP_DIR"
export ELM_BIN_DIR="$APP_DIR/bin"
export ELM_LIB_DIR="$APP_DIR/lib/aarch64-linux-gnu"
export ELM_DATA_DIR="$APP_DIR/share/elementary"
export ELM_LOCALE_DIR="$APP_DIR/share/locale"

export LD_LIBRARY_PATH="$APP_DIR/lib/aarch64-linux-
gnu:${LD_LIBRARY_PATH:-}"
[...]
exec "$APP_DIR/bin/elementary_config" "$@" 

´´´

I don't know whether it is helpful, but here the output of eina_btlog
of the first error message (failed to load elementary module).

´´´
   /opt/click.ubuntu.com/pefl.maxperl/current/lib/aarch64-linux-
gnu/libeina.so.1      | /: 0 @ ()
    /opt/click.ubuntu.com/pefl.maxperl/current/lib/aarch64-linux-
gnu/libeina.so.1      | /: 0 @ ()
    /opt/click.ubuntu.com/pefl.maxperl/current/lib/aarch64-linux-
gnu/libeina.so.1      | /: 0 @ ()
    /opt/click.ubuntu.com/pefl.maxperl/current/lib/aarch64-linux-
gnu/libelementary.so.1| /: 0 @ ()
    /opt/click.ubuntu.com/pefl.maxperl/current/lib/aarch64-linux-
gnu/libelementary.so.1| /: 0 @ ()
    /opt/click.ubuntu.com/pefl.maxperl/current/lib/aarch64-linux-
gnu/libelementary.so.1| /: 0 @ ()
    /opt/click.ubuntu.com/pefl.maxperl/current/lib/aarch64-linux-
gnu/libelementary.so.1| /: 0 @ ()
                     
/opt/click.ubuntu.com/pefl.maxperl/current/bin/elementary_config | /: 0
@ ()
                                              /lib/aarch64-linux-
gnu/libc.so.6         | /: 0 @ ()
                                              /lib/aarch64-linux-
gnu/libc.so.6         | /: 0 @ ()
                     
/opt/click.ubuntu.com/pefl.maxperl/current/bin/elementary_config | /: 0
@ ()
´´´

Best wishes, Max

Am Dienstag, dem 12.05.2026 um 06:07 +0100 schrieb Carsten Haitzler:
> On Mon, 11 May 2026 21:34:52 +0200 Maximilian Lika via enlightenment-
> users
> <[email protected]> said:
> 
> > Hello everybody,
> > 
> > I'm trying once again to get EFL running on Ubuntu Touch :-) (see
> > my
> > old post at
> > https://sourceforge.net/p/enlightenment/mailman/message/58751741/).
> > 
> > Everything works perfectly under Libertine (a chroot environment
> > for
> > desktop applications). But now I'm trying to create a proper Ubuntu
> > app
> > using Clickable.
> > 
> > I think I solved the previous issues with missing read and write
> > permissions by installing efl in a prefix (where the app has read
> > access).
> > 
> > However, it still isn't working. The error message is as follows:
> 
> you're missing pretty much all modules it seems... there are a lot of
> modules
> in efl and they are expected to be installed in a path relative to
> the libs
> themselves. efl will also need data files too in
> PREFIX/share/nameoflib
> (nameoflib is elementary, evas, etc. etc.).
> 
> so somehow you've messed the install up.
> 
> the elementary modules, normally you'd find them in
> PREFIX/lib/elementary/modules/
> 
>  6:03AM /usr/local/lib/elementary/modules > pwd
> /usr/local/lib/elementary/modules
>  6:03AM /usr/local/lib/elementary/modules > find
> .
> ./prefs
> ./prefs/v-1.28
> ./prefs/v-1.28/module.so
> ./access_output
> ./access_output/v-1.28
> ./access_output/v-1.28/module.so
> ./web
> ./web/none
> ./web/none/v-1.28
> ./web/none/v-1.28/module.so
> ./test_map
> ./test_map/v-1.28
> ./test_map/v-1.28/module.so
> ./test_entry
> ./test_entry/v-1.28
> ./test_entry/v-1.28/module.so
> 
> ie PREFIX here is /usr/local/lib
> 
> similar for evas, ecore_evas etc.:
> 
>  6:04AM /usr/local/lib/ecore_evas > pwd
> /usr/local/lib/ecore_evas
>  6:04AM /usr/local/lib/ecore_evas > find
> .
> ./extn
> ./engines
> ./engines/wayland
> ./engines/wayland/v-1.28
> ./engines/wayland/v-1.28/module.so
> ./engines/extn
> ./engines/extn/v-1.28
> ./engines/extn/v-1.28/module.so
> ./engines/x
> ./engines/x/v-1.28
> ./engines/x/v-1.28/module.so
> ./engines/fb
> ./engines/fb/v-1.28
> ./engines/fb/v-1.28/module.so
> ./engines/drm
> ./engines/drm/v-1.28
> ./engines/drm/v-1.28/module.so
> 
>  6:04AM /usr/local/lib/evas > pwd
> /usr/local/lib/evas
>  6:05AM /usr/local/lib/evas > find
> .
> ./utils
> ./utils/evas_image_loader.ppt
> ./utils/evas_image_loader.k25
> ./utils/evas_image_loader.dcr
> ./utils/evas_image_loader.svgz
> ./utils/evas_image_loader.nef
> ./utils/evas_image_loader.qt
> ./utils/evas_image_loader.m2t
> ./utils/evas_image_loader.3p2
> ./utils/evas_image_loader.svg.gz
> ./utils/evas_image_loader.cr2
> ./utils/evas_image_loader.ods
> ./utils/evas_image_loader.mp2
> ./utils/evas_image_loader.webm
> ./utils/evas_image_loader.rms
> ./utils/evas_generic_pdf_loader.rtf
> ./utils/evas_image_loader.erf
> ./utils/evas_image_loader.rmj
> ./utils/evas_generic_pdf_loader.xlsx
> ./utils/evas_image_loader.rtf
> ./utils/evas_image_loader.m4v
> ./utils/evas_image_loader.nrw
> ./utils/evas_image_loader.bdmv
> ./utils/evas_image_loader.rm
> ./utils/evas_image_loader.m2v
> ./utils/evas_image_loader.sr2
> ./utils/evas_image_loader.rv
> ./utils/evas_image_loader.crw
> ./utils/evas_image_loader.ps
> ./utils/evas_image_loader.dng
> ./utils/evas_image_loader.rmx
> ./utils/evas_image_loader.mpg
> ./utils/evas_image_loader.clpi
> ./utils/evas_image_loader.docx
> ./utils/evas_image_loader.flv
> ./utils/evas_generic_pdf_loader.doc
> ./utils/evas_image_loader.mrw
> ./utils/evas_image_loader.mxf
> ./utils/evas_generic_pdf_loader.odt
> ./utils/evas_image_loader.xlsx
> ./utils/evas_image_loader.xls
> ./utils/evas_image_loader.svg
> ./utils/evas_image_loader.264
> ./utils/evas_image_loader.weba
> ./utils/evas_image_loader.3gpp2
> ./utils/evas_image_loader.bdm
> ./utils/evas_generic_pdf_loader.xls
> ./utils/evas_image_loader.raf
> ./utils/evas_image_loader.odp
> ./utils/evas_image_loader.raw
> ./utils/evas_image_loader.doc
> ./utils/evas_image_loader.mpl
> ./utils/evas_image_loader.m1v
> ./utils/evas_image_loader.orf
> ./utils/evas_image_loader.mpe
> ./utils/evas_image_loader.x3f
> ./utils/evas_image_loader.fla
> ./utils/evas_image_loader.nrf
> ./utils/evas_image_loader.xcf
> ./utils/evas_generic_pdf_loader.pptx
> ./utils/evas_image_loader.pef
> ./utils/evas_image_loader.nuv
> ./utils/evas_image_loader.rmm
> ./utils/evas_image_loader.ogg
> ./utils/evas_image_loader.wmv
> ./utils/evas_image_loader.mov
> ./utils/evas_image_loader.odt
> ./utils/evas_image_loader.mp2ts
> ./utils/evas_generic_pdf_loader.ppt
> ./utils/evas_image_loader.ogv
> ./utils/evas_image_loader.xcf.gz
> ./utils/evas_image_loader.mpeg
> ./utils/evas_image_loader.3g2
> ./utils/evas_image_loader.dv
> ./utils/evas_image_loader.mp4
> ./utils/evas_image_loader.3gp
> ./utils/evas_image_loader.rmvb
> ./utils/evas_image_loader.rsvg
> ./utils/evas_image_loader.rw2
> ./utils/evas_generic_pdf_loader.odp
> ./utils/evas_generic_pdf_loader.ods
> ./utils/evas_image_loader.avi
> ./utils/evas_image_loader.mts
> ./utils/evas_image_loader.arw
> ./utils/evas_image_loader.ogm
> ./utils/evas_image_loader.mkv
> ./utils/evas_image_loader.cpi
> ./utils/evas_image_loader.gst
> ./utils/evas_image_loader.kdc
> ./utils/evas_generic_pdf_loader.docx
> ./utils/evas_image_loader.3gp2
> ./utils/evas_image_loader.3gpp
> ./utils/evas_image_loader.asf
> ./utils/evas_image_loader.srf
> ./utils/evas_image_loader.pptx
> ./utils/evas_image_loader.ts
> ./utils/evas_image_loader.swf
> ./utils/evas_image_loader.pdf
> ./utils/evas_generic_pdf_loader.libreoffice
> ./utils/evas_image_loader.mpls
> ./utils/evas_image_loader.nut
> ./modules
> ./modules/image_loaders
> ./modules/image_loaders/gif
> ./modules/image_loaders/gif/v-1.28
> ./modules/image_loaders/gif/v-1.28/module.so
> ./modules/image_loaders/bmp
> ./modules/image_loaders/bmp/v-1.28
> ./modules/image_loaders/bmp/v-1.28/module.so
> ./modules/image_loaders/tga
> ./modules/image_loaders/tga/v-1.28
> ./modules/image_loaders/tga/v-1.28/module.so
> ./modules/image_loaders/qoi
> ./modules/image_loaders/qoi/v-1.28
> ./modules/image_loaders/qoi/v-1.28/module.so
> ./modules/image_loaders/tgv
> ./modules/image_loaders/tgv/v-1.28
> ./modules/image_loaders/tgv/v-1.28/module.so
> ./modules/image_loaders/psd
> ./modules/image_loaders/psd/v-1.28
> ./modules/image_loaders/psd/v-1.28/module.so
> ./modules/image_loaders/wbmp
> ./modules/image_loaders/wbmp/v-1.28
> ./modules/image_loaders/wbmp/v-1.28/module.so
> ./modules/image_loaders/tiff
> ./modules/image_loaders/tiff/v-1.28
> ./modules/image_loaders/tiff/v-1.28/module.so
> ./modules/image_loaders/webp
> ./modules/image_loaders/webp/v-1.28
> ./modules/image_loaders/webp/v-1.28/module.so
> ./modules/image_loaders/jp2k
> ./modules/image_loaders/jp2k/v-1.28
> ./modules/image_loaders/jp2k/v-1.28/module.so
> ./modules/image_loaders/generic
> ./modules/image_loaders/generic/v-1.28
> ./modules/image_loaders/generic/v-1.28/module.so
> ./modules/image_loaders/ico
> ./modules/image_loaders/ico/v-1.28
> ./modules/image_loaders/ico/v-1.28/module.so
> ./modules/image_loaders/jxl
> ./modules/image_loaders/jxl/v-1.28
> ./modules/image_loaders/jxl/v-1.28/module.so
> ./modules/image_loaders/xpm
> ./modules/image_loaders/xpm/v-1.28
> ./modules/image_loaders/xpm/v-1.28/module.so
> ./modules/image_loaders/pmaps
> ./modules/image_loaders/pmaps/v-1.28
> ./modules/image_loaders/pmaps/v-1.28/module.so
> ./modules/image_loaders/avif
> ./modules/image_loaders/avif/v-1.28
> ./modules/image_loaders/avif/v-1.28/module.so
> ./modules/image_loaders/heif
> ./modules/image_loaders/heif/v-1.28
> ./modules/image_loaders/heif/v-1.28/module.so
> ./modules/image_savers
> ./modules/image_savers/qoi
> ./modules/image_savers/qoi/v-1.28
> ./modules/image_savers/qoi/v-1.28/module.so
> ./modules/image_savers/tgv
> ./modules/image_savers/tgv/v-1.28
> ./modules/image_savers/tgv/v-1.28/module.so
> ./modules/image_savers/tiff
> ./modules/image_savers/tiff/v-1.28
> ./modules/image_savers/tiff/v-1.28/module.so
> ./modules/image_savers/webp
> ./modules/image_savers/webp/v-1.28
> ./modules/image_savers/webp/v-1.28/module.so
> ./modules/image_savers/jxl
> ./modules/image_savers/jxl/v-1.28
> ./modules/image_savers/jxl/v-1.28/module.so
> ./modules/image_savers/avif
> ./modules/image_savers/avif/v-1.28
> ./modules/image_savers/avif/v-1.28/module.so
> ./modules/engines
> ./modules/engines/gl_drm
> ./modules/engines/gl_drm/v-1.28
> ./modules/engines/gl_drm/v-1.28/module.so
> ./modules/engines/wayland_egl
> ./modules/engines/wayland_egl/v-1.28
> ./modules/engines/wayland_egl/v-1.28/module.so
> ./modules/engines/gl_generic
> ./modules/engines/gl_generic/v-1.28
> ./modules/engines/gl_generic/v-1.28/module.so
> ./modules/engines/software_x11
> ./modules/engines/software_x11/v-1.28
> ./modules/engines/software_x11/v-1.28/module.so
> ./modules/engines/buffer
> ./modules/engines/buffer/v-1.28
> ./modules/engines/buffer/v-1.28/module.so
> ./modules/engines/wayland_shm
> ./modules/engines/wayland_shm/v-1.28
> ./modules/engines/wayland_shm/v-1.28/module.so
> ./modules/engines/gl_x11
> ./modules/engines/gl_x11/v-1.28
> ./modules/engines/gl_x11/v-1.28/module.so
> ./modules/engines/fb
> ./modules/engines/fb/v-1.28
> ./modules/engines/fb/v-1.28/module.so
> ./modules/engines/drm
> ./modules/engines/drm/v-1.28
> ./modules/engines/drm/v-1.28/module.so
> 
> 
> > ```
> > ERR<90576>:elementary ../src/lib/elementary/elm_module.c:114
> > _elm_module_find_as() Failed to load elementary module:
> > 'prefs_iface':
> > No such file or directory
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:eina_safety ../src/lib/ecore_evas/ecore_evas.c:3941
> > ecore_evas_software_x11_new() safety check failed: m == NULL
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:eina_safety ../src/lib/ecore_evas/ecore_evas.c:4056
> > ecore_evas_gl_x11_options_new() safety check failed: m == NULL
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:elementary ../src/lib/elementary/efl_ui_win.c:5572
> > _elm_win_finalize_internal() Cannot create window.
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:eo ../src/lib/eo/eo.c:1137 _efl_add_internal_end()
> > Object of
> > class 'Efl.Ui.Win_Legacy' - Not all of the object constructors have
> > been executed.
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:796 _ecore_magic_fail()
> > ***
> > ECORE ERROR: Ecore Magic Check Failed!!! in:
> > ecore_evas_callback_selection_changed_set()
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:798
> > _ecore_magic_fail()    
> > Input handle pointer is NULL!
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [....]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:796 _ecore_magic_fail()
> > ***
> > ECORE ERROR: Ecore Magic Check Failed!!! in:
> > ecore_evas_callback_drop_drop_set()
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:798
> > _ecore_magic_fail()    
> > Input handle pointer is NULL!
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:796 _ecore_magic_fail()
> > ***
> > ECORE ERROR: Ecore Magic Check Failed!!! in:
> > ecore_evas_callback_drop_motion_set()
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:798
> > _ecore_magic_fail()    
> > Input handle pointer is NULL!
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:796 _ecore_magic_fail()
> > ***
> > ECORE ERROR: Ecore Magic Check Failed!!! in:
> > ecore_evas_callback_drop_state_changed_set()
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:ecore ../src/lib/ecore/ecore.c:798
> > _ecore_magic_fail()    
> > Input handle pointer is NULL!
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > 
> > ERR<90576>:evas_main ../src/lib/evas/canvas/evas_object_smart.c:746
> > _efl_canvas_group_efl_object_destructor() efl_canvas_group_del()
> > was
> > not called on this object: 0x40000000638f (Efl.Ui.Win_Legacy)
> > ## Copy & Paste the below (until EOF) into a terminal, then hit
> > Enter
> > [...]
> > ```
> > 
> > What is the prefs_iface module? Where might the problem be? Does
> > this
> > make sense to anyone? I'm a bit lost right now and would appreciate
> > any
> > hints on where to look :-)
> > 
> > Thanks in advance!
> > 
> > Best regards,
> > Max
> > 
> > 
> > _______________________________________________
> > enlightenment-users mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> > 
> 


_______________________________________________
enlightenment-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to