On Mon, 11 Dec 2017 15:11:26 +0100 Massimo Maiurana <maiur...@gmail.com> said:
> mh ha scritto il 11/12/2017 alle 13:52: > > On 12/11/17 6:35 AM, Massimo Maiurana wrote: > >> Carsten Haitzler ha scritto il 11/12/2017 alle 01:00: > >>> On Sun, 10 Dec 2017 17:43:55 +0100 Massimo Maiurana > >>> <maiur...@gmail.com> said: > >>> > >>>> marcel-hollerb...@t-online.de ha scritto il 10/12/2017 alle 11:30: > >>>>> Hello, > >>>>> > >>>>> On Sun, Dec 10, 2017 at 10:20:22AM +0100, Massimo Maiurana wrote: > >>>>>> Massimo Maiurana ha scritto il 10/12/2017 alle 09:41: > >>>>>>> Carsten Haitzler ha scritto il 10/12/2017 alle 02:02: > >>>>>>>> On Sat, 9 Dec 2017 18:06:49 +0100 Massimo Maiurana > >>>>>>>> <maiur...@gmail.com> > >>>>>>>> said: > >>>>>>>> > >>>>>>>>> I have a different problem with the prefix. > >>>>>>>>> > >>>>>>>>> I build E using this command: > >>>>>>>>> meson --prefix=/opt/e17 . build > >>>>>>>>> > >>>>>>>>> But both modules and pkgconfig files are not installed in > >>>>>>>>> /opt/e17/lib > >>>>>>>>> as I would expect, they are installed in > >>>>>>>>> /opt/e17/lib/x86_64-linux-gnu, > >>>>>>>>> so E doesn't find any module at startup and additional modules > >>>>>>>>> can't be > >>>>>>>>> built as at configuration stage they can't find > >>>>>>>>> enlightenment.pc. I have > >>>>>>>>> to move all directories by hand. > >>>>>>>>> > >>>>>>>>> Is there a way to make it install these files in the right > >>>>>>>>> directories? > >>>>>>>> odd. they don't do that for me on arch. they install in the > >>>>>>>> usual old > >>>>>>>> school places. PREFIX/lib/enligntenment/... for modules, > >>>>>>>> PREFIX/lib/pkgconfig/... for pc files... > >>>>>>>> > >>>>>>>> has your meson been patched by your distro? > >>>>>>> It could be, I'm on debian buster. The current shipped version is > >>>>>>> 0.42.1 > >>>>>>> and I see in changelog that something has changed to solve some > >>>>>>> problems > >>>>>>> with multiarch and cross builds: > >>>>>>> http://metadata.ftp-master.debian.org/changelogs/main/m/meson/meson_0.42.1-1_changelog > >>>>>>> > >>>>>> Uhm, it appears that this is the only patch in debian package and it > >>>>>> looks unrelated to this issue: > >>>>>> https://sources.debian.org/patches/meson/0.42.1-1/1-disable-openmpi.patch/ > >>>>>> > >>>>>> > >>>>>> Maybe the problem is the meson version, 0.42.1 in buster but > >>>>>> 0.43.0 in > >>>>>> Arch? > >>>>>> > >>>>>> 0.43.0 has not been ported to debian due to compilation problems: > >>>>>> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=879976 > >>>>>> > >>>>>>> I'll try do downgrade meson to see if the issue has been > >>>>>>> introduced at > >>>>>>> some point. > >>>>>> There aren't other versions available in buster :( > >>>>>> > >>>>> > >>>>> Can you check the output of mesonconf ? > >>>>> > >>>>> I think you have your libdir variable set to lib/x86_64-linux-gnu/ no > >>>>> idea why, but debian & ubuntu default theire lib directory in meson to > >>>>> that value ... > >>>> Looks like they do it in order to avoid conflict in multiarch systems, > >>>> see here: https://wiki.debian.org/Multiarch/Implementation > >>>> > >>>> Maybe $prefix/lib/<triplet> should be included in the search path? This > >>>> way a default installation would work in any system, as even installing > >>>> in standard prefixes would end having libraries in the triplet subdir. > >>> then something isn't setting PACKAGE_LIB_DIR (and other defines) > >>> correctly... > >>> because this is what lets the lib or app find its modules at runtime. > >>> in rage i > >>> put: > >>> > >>> dir_lib = join_paths(dir_prefix, get_option('libdir')) > >>> ... > >>> cfg.set_quoted('PACKAGE_LIB_DIR' , dir_lib) > >>> > >>> so it SHOULD be set right... so i am guessing e isn't setting these > >>> right so > >>> that it can then know the libdir is actually a 2 level thing (and > >>> what it is -> > >>> lib/x86... from prefix) > >> Well, I found out that E didn't do it at that time because I just > >> restarted it after building with the usual "killall -HUP enlightenment". > >> For some reason the fresh installed E did keep looking at /opt/e17/lib > >> to load its modules and didn't found them. > >> > >> Today I rebooted and now it looked at /opt/e17/lib/x86_64-linux-gnu, but > >> as I moved them all it again didn't found them. For now I solved with a > >> simple symlink, but at least now I know it does the right thing, though > >> it didn't after SIGHUP :) > >> > >>>>> You can change that with `meson --libdir=lib [whatever option] ..` > >>>>> > >>>>> > >>>>> Greetings, > >>>>> bu5hm4n > >>>>> > >>>>>>>>> Massimo > >>>>>>>>> > >>>>>>>>> Daniel Kasak ha scritto il 29/11/2017 alle 04:14: > >>>>>>>>>> I'm having a small issue with meson and enlightenment. It's > >>>>>>>>>> ignoring my > >>>>>>>>>> 'prefix' option. I'm building like this: > >>>>>>>>>> > >>>>>>>>>> --- > >>>>>>>>>> > >>>>>>>>>> export LIBRAW_CFLAGS=-I/usr/include/libraw > >>>>>>>>>> export PKG_CONFIG_PATH=/opt/e22/lib/pkgconfig > >>>>>>>>>> export CFLAGS="-O3 -g3 -march=skylake -ffast-math -W -Wall > >>>>>>>>>> -Wextra > >>>>>>>>>> -Wshadow -Wstrict-prototypes" > >>>>>>>>>> > >>>>>>>>>> rm -rf build > >>>>>>>>>> > >>>>>>>>>> meson . build > >>>>>>>>>> > >>>>>>>>>> meson configure build \ > >>>>>>>>>> -Dprefix=/opt/e22 \ > >>>>>>>>>> -Dincludedir=/opt/e22 \ > >>>>>>>>>> -Dwayland=True > >>>>>>>>>> > >>>>>>>>>> ninja -C build > >>>>>>>>>> ninja -C build install > >>>>>>>>>> > >>>>>>>>>> --- > >>>>>>>>>> > >>>>>>>>>> If I cd into the enlightenment source and go: > >>>>>>>>>> > >>>>>>>>>> meson configure build > >>>>>>>>>> > >>>>>>>>>> ... it says it's recognised the 'prefix': > >>>>>>>>>> > >>>>>>>>>> Directories: > >>>>>>>>>> Option Current Value Description > >>>>>>>>>> ------ ------------- ----------- > >>>>>>>>>> prefix /opt/e22 Installation prefix. > >>>>>>>>>> > >>>>>>>>>> But when I do: > >>>>>>>>>> > >>>>>>>>>> ninja -C build install > >>>>>>>>>> > >>>>>>>>>> ... it installs into /usr/local/ > >>>>>>>>>> > >>>>>>>>>> If I do: > >>>>>>>>>> > >>>>>>>>>> DESTDIR=/opt/e22 ninja -C build install > >>>>>>>>>> > >>>>>>>>>> ... it puts things in /opt/e22/usr/local/ ... etc > >>>>>>>>>> > >>>>>>>>>> I guess I'm doing something wrong. Any hints? > >>>>>>>>>> > >>>>>>>>>> Dan > >>>>>>>>>> ------------------------------------------------------------------------------ > >>>>>>>>>> > >>>>>>>>>> Check out the vibrant tech community on one of the world's most > >>>>>>>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot > >>>>>>>>>> _______________________________________________ > >>>>>>>>>> enlightenment-users mailing list > >>>>>>>>>> enlightenment-users@lists.sourceforge.net > >>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-users > >>>>>>>>>> > >>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> Massimo Maiurana > >>>>>>>>> Ragusa (RG) > >>>>>>>>> > >>>>>>>>> ------------------------------------------------------------------------------ > >>>>>>>>> > >>>>>>>>> Check out the vibrant tech community on one of the world's most > >>>>>>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot > >>>>>>>>> _______________________________________________ > >>>>>>>>> enlightenment-users mailing list > >>>>>>>>> enlightenment-users@lists.sourceforge.net > >>>>>>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-users > >>>>>>>>> > >>>>>>>> > >>>>>>> > >>>>>> > >>>>>> -- > >>>>>> Massimo Maiurana > >>>>>> Ragusa (RG) > >>>>>> > >>>>>> ------------------------------------------------------------------------------ > >>>>>> > >>>>>> Check out the vibrant tech community on one of the world's most > >>>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot > >>>>>> _______________________________________________ > >>>>>> enlightenment-users mailing list > >>>>>> enlightenment-users@lists.sourceforge.net > >>>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-users > >>>>> ------------------------------------------------------------------------------ > >>>>> > >>>>> Check out the vibrant tech community on one of the world's most > >>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot > >>>>> _______________________________________________ > >>>>> enlightenment-users mailing list > >>>>> enlightenment-users@lists.sourceforge.net > >>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-users > >>>>> > >>>> > >>>> -- > >>>> Massimo Maiurana > >>>> Ragusa (RG) > >>>> > >>>> ------------------------------------------------------------------------------ > >>>> > >>>> Check out the vibrant tech community on one of the world's most > >>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot > >>>> _______________________________________________ > >>>> enlightenment-users mailing list > >>>> enlightenment-users@lists.sourceforge.net > >>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-users > > > > I'm not sure if this will help or not. > > No need to help, the problem arise because I did not reboot after > building and E did keep searching modules in the wrong dir :) you shouldn't need a reboot. it could be that enlightenment had set the E_LIB_DIR env var based on it's initial run, but then your rebuilds effectively changed the lib dir path between builds, but since this env var was already set... it was used in preference to "figure out my prefix" which is what will happen when it's not set. if not set eina_prefix will go figuring out where e is installed by looking at some symbol info, some "check files" etc. to figure out location of bin, lib, locale and share dirs (as well as base prefix). IF the env vars are set eina_prefix will skip the hunting and just use what the env vars say to use... so a reboot wouldn't be needed. just log out and log back in if my guess above is correct. lesson i guess to learn is... don't go changing the prefix installation etc. of an app like e and just expect restarts to work. you may have to totally exit it and come back in. > > I'm using meson and ninja to > > install enlightenment, ephoto, rage and terminology into /opt/e on a > > Debian system without problems. In my /etc/ld.so.conf.d directory I have > > a file enlightenment.conf. That file has one line: /opt/e/lib , along > > with a comment that states it installs enlightenment into /opt/e. > > That is also my case, but it's better to add a line also for > /opt/e/lib/x86_64-linux-gnu in that file, or whatever is your arch, > because if efl will switch to meson your ld.so won't find its libs ;) > > > After building with meson I install with ninja -v, then ninja install. > > > > > > > > ------------------------------------------------------------------------------ > > > > Check out the vibrant tech community on one of the world's most > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > _______________________________________________ > > enlightenment-users mailing list > > enlightenment-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/enlightenment-users > > > -- > Massimo Maiurana > Ragusa (RG) > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > enlightenment-users mailing list > enlightenment-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-users -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- Carsten Haitzler - ras...@rasterman.com ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-users mailing list enlightenment-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-users