On Thu, Jun 9, 2016 at 10:10 PM, Cedric BAIL <cedric.b...@free.fr> wrote:
> Hello, > > On Thu, Jun 9, 2016 at 4:53 PM, Tim Bird <tbird...@gmail.com> wrote: > > I am a newbie to EFL development. I'm trying to write a little test > > program for EFL, and wanted to test out elemines as an example of some of > > the techniques. > > However, I ran into some problems. > > > > I am running EFL 17 on Ubuntu 14.04. I cloned elemines from > > https://git.enlightenment.org/games/elemines.git > > and was able to get it built. > > > > 1) - path to libetrophy error > > When I try to run it, I got the following error message: > > elemines: error while loading shared libraries: libetrophy.so.0: cannot > > open shared object file: No such file or directory > > > > During the build, I figured out I needed etrophy, and built and installed > > the shared > > library for that. They etrophy libraries ended up in /usr/local/lib > > > > I can work around this using 'export LD_LIBRARY_PATH=/usr/local/lib', > > before running elemines. > > Is it possible that either your /usr/local/lib is not your ld.so.conf > path ? or that you haven't run ldconfig after installing etrophy ? > That was it. Sorry for the dumb error. It's been a while since I've done C programming in user-space and I forgot about needing to re-run ldconfig after installing a new library. > > > 2) missing some elementary config > > When I run elemines (with the right library path), I get a warning from > the > > program: > > > > ERR<27210>:eio lib/eio/eio_monitor.c:339 eio_monitor_stringshared_add() > > monitored path '/home/CORPUSERS/10102229/.elementary/config/standard' not > > found. > > > > I don't have the enlightenment window manager installed (to my > knowledge). > > I'm not sure what is being looked for here, > > but the warning is a bit disconcerting. I can make the warning go away > by > > creating the directory > > ~/.elementary/config/standard, but I'm worried that something is supposed > > to be there that's not. > > Hum, that one I have no clue at the moment. Will see if I can look > into it tomorrow, but in all case Enlightenment shouldn't be needed. > > > 3) Segmentation fault > > This is the most serious problem. elemines gets a segmentation fault > when > > I do the first mouse click in the > > game grid. > > > > I debugged the program a bit and found that there's a sscanf on a string > > used to map the mouse click to > > the game grid. Here's the sscanf: > > sscanf(source, "board[%i,%i]:overlay", &x, &y); > > > > but here's the value of the 'source' string used with it: > > board[item_0x7fff8daa2c60{7,2}]:overlay > > > > this is in the routine _click() in src/game.c > > Note that there's no error handling for the sscanf. However, the string > > clearly is not what's expected. > > Sorry that you have hit that bug. It is a regression in edje_cc > provided in efl 1.17 that do not compile correctly elemines. This is > fixed in current git. I should backport the fix and make sure it is in > the next release along with a few others. Thanks for the reminder and > sorry again about this one. > > > In another part of the program, there's this line, which seems to specify > > the string for the > > mouse click grid mapping. > > > > edje_object_signal_callback_add(edje, "mouse,clicked,*", > > "board\\[*\\]:overlay", _click, NULL); > > > > It appears that elemines expects the coordinates from the specified > string > > inside the > > brackets (I'm guessing that's what the * is for in the string. However, > I > > don't know > > where this 'item_0x7fff8daa2c60{..}' is coming from. > > Yes, exactly. edje_cc has generated automatically some names that are > being passed wrongly in the event name resulting in breaking the > signal name for elemines. This can be fixed by just changing the edj > file. I have attached a version of the .edj generated by efl git. > > > Is there something from edje that's missing, to have the mouse click > string > > come out properly? > > Me, backporting the fix I guess. Will do right away. > Thanks for the info. -- Tim ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel