On Mon, 11 Dec 2017 12:35:03 +0100 Massimo Maiurana <maiur...@gmail.com> said:

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

that's odd. i now looked at e's meson.build in its toplevel:

dir_lib       = join_paths(dir_prefix, get_option('libdir'))
...
add_global_arguments('-DPACKAGE_LIB_DIR="@0@"'.format(dir_lib), language: 'c')

is there... so it's adding it (as a -D define to compiler args)...

my build.ninja has it there on the cmdline args:

'-DPACKAGE_LIB_DIR="/usr/local/lib"'

as well as compile_commands.json having it too. it seems to be used correctly
and set up correctly. so i'm a little baffled as to what your exact problem
is... as best i can for now see, e's build is doing the right thing.

> >>> 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
> >>
> > 
> > 
> 
> 
> -- 
> Massimo Maiurana
> Ragusa (RG)
> 


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

Reply via email to