On Thu, 18 Jul 2019 16:30:37 -0400 mh <mhe...@member.fsf.org> said:

> 
> On 7/18/19 12:22 PM, Massimo Maiurana wrote:
> > mh ha scritto il 18/07/19 alle 17:32:
> >> On 7/18/19 5:38 AM, Marcel Hollerbach wrote:
> >>> Hi,
> >>>
> >>> On 7/17/19 11:40 PM, mh wrote:
> >>>> On 7/17/19 5:20 PM, Massimo Maiurana wrote:
> >>>>> mh ha scritto il 17/07/19 alle 23:05:
> >>>>>> On 7/17/19 12:04 PM, Massimo Maiurana wrote:
> >>>>>>
> >>>>>>> mh ha scritto il 17/07/19 alle 15:16:
> >>>>>>>> On 7/17/19 12:50 AM, Vincent Torri wrote:
> >>>>>>>>
> >>>>>>>>> On Wed, Jul 17, 2019 at 12:25 AM mh<mhe...@member.fsf.org>  wrote:
> >>>>>>>>>> On 7/16/19 5:39 PM, Vincent Torri wrote:
> >>>>>>>>>>
> >>>>>>>>>>> On Tue, Jul 16, 2019 at 10:32 PM mh<mhe...@member.fsf.org>
> >>>>>>>>>>> wrote:
> >>>>>>>>>>>> I am trying to build/install E into /opt/e. I have my PATH,
> >>>>>>>>>>>> LD_LIBRARY_PATH, and PKG_CONFIG_PATH set to include /opt/e. EFL
> >>>>>>>>>>>> builds
> >>>>>>>>>>>> and install properly to /opt/e. Enlightenment meson build fails
> >>>>>>>>>>>> with:
> >>>>>>>>>>>> meson.build:225:11: ERROR: Dependency "eeze" not found, tried
> >>>>>>>>>>>> pkgconfig
> >>>>>>>>>>>> and cmake
> >>>>>>>>>>>>
> >>>>>>>>>>>> The end of the enlightenment/build/meson-logs/meson-log.txt
> >>>>>>>>>>>> (below)
> >>>>>>>>>>>> shows that it appears to see the correct PKG_CONFIG_PATH, but
> >>>>>>>>>>>> still
> >>>>>>>>>>>> fails. What is happening? When autoconf was still possible with
> >>>>>>>>>>>> efl I
> >>>>>>>>>>>> could install to /opt/e with that and then build the
> >>>>>>>>>>>> enlightenment,
> >>>>>>>>>>>> ephoto, terminology with their respective meson/ninja methods.
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> CMake binary for MachineChoice.HOST is not cached
> >>>>>>>>>>>> CMake binary missing from cross or native file, or env var
> >>>>>>>>>>>> undefined.
> >>>>>>>>>>>> Trying a default CMake fallback at cmake
> >>>>>>>>>>>> Trying CMake binary cmake for machine MachineChoice.HOST at
> >>>>>>>>>>>> ['/usr/bin/cmake']
> >>>>>>>>>>>> Found CMake: /usr/bin/cmake (3.13.4)
> >>>>>>>>>>>> Extracting basic cmake information
> >>>>>>>>>>>> Try CMake generator: auto
> >>>>>>>>>>>> Called `/usr/bin/cmake --trace-expand .` in
> >>>>>>>>>>>> /home/michael/e-git-script/enlightenment/build/meson-private/cmake_bluez
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> -> 0
> >>>>>>>>>>>> -- Module search paths: ['/', '/opt', '/usr', '/usr/local']
> >>>>>>>>>>>> -- CMake root: /usr/share/cmake-3.13
> >>>>>>>>>>>> -- CMake architectures: ['i386-linux-gnu', 'x86_64-linux-gnu']
> >>>>>>>>>>>> -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32',
> >>>>>>>>>>>> 'share', 'lib/i386-linux-gnu', 'lib/x86_64-linux-gnu']
> >>>>>>>>>>>> Run-time dependency bluez found: NO (tried pkgconfig and cmake)
> >>>>>>>>>>>> Pkg-config binary for MachineChoice.HOST is cached.
> >>>>>>>>>>>> Determining dependency 'systemd' with pkg-config executable
> >>>>>>>>>>>> '/usr/bin/pkg-config'
> >>>>>>>>>>>> PKG_CONFIG_PATH: /opt/e/lib/pkgconfig:
> >>>>>>>>>>>> Called `/usr/bin/pkg-config --modversion systemd` -> 0
> >>>>>>>>>>>> 241
> >>>>>>>>>>>> PKG_CONFIG_PATH: /opt/e/lib/pkgconfig:
> >>>>>>>>>>>> Called `/usr/bin/pkg-config --cflags systemd` -> 0
> >>>>>>>>>>>>
> >>>>>>>>>>>> PKG_CONFIG_PATH: /opt/e/lib/pkgconfig:
> >>>>>>>>>>>> Called `/usr/bin/pkg-config systemd --libs` -> 0
> >>>>>>>>>>>>
> >>>>>>>>>>>> PKG_CONFIG_PATH: /opt/e/lib/pkgconfig:
> >>>>>>>>>>>> Called `/usr/bin/pkg-config systemd --libs` -> 0
> >>>>>>>>>>>>
> >>>>>>>>>>>> Run-time dependency systemd found: YES 241
> >>>>>>>>>>>> PKG_CONFIG_PATH: /opt/e/lib/pkgconfig:
> >>>>>>>>>>>> Called `/usr/bin/pkg-config --variable=systemduserunitdir
> >>>>>>>>>>>> systemd`
> >>>>>>>>>>>> -> 0
> >>>>>>>>>>>> /usr/lib/systemd/user
> >>>>>>>>>>>> Got pkgconfig variable systemduserunitdir :
> >>>>>>>>>>>> /usr/lib/systemd/user
> >>>>>>>>>>>> Pkg-config binary for MachineChoice.HOST is cached.
> >>>>>>>>>>>> Determining dependency 'eeze' with pkg-config executable
> >>>>>>>>>>>> '/usr/bin/pkg-config'
> >>>>>>>>>>>> PKG_CONFIG_PATH: /opt/e/lib/pkgconfig:
> >>>>>>>>>>>> Called `/usr/bin/pkg-config --modversion eeze` -> 1
> >>>>>>>>>>>>
> >>>>>>>>>>>> CMake binary for MachineChoice.HOST is cached.
> >>>>>>>>>>>> Run-time dependency eeze found: NO (tried pkgconfig and cmake)
> >>>>>>>>>>>>
> >>>>>>>>>>>> meson.build:225:11: ERROR: Dependency "eeze" not found, tried
> >>>>>>>>>>>> pkgconfig
> >>>>>>>>>>>> and cmake
> >>>>>>>>>>> the error is that eeze is not found.
> >>>>>>>>>>>
> >>>>>>>>>>> Either :
> >>>>>>>>>>>
> >>>>>>>>>>> 1) build the efl with eeze support (iirc, libmount is
> >>>>>>>>>>> necessary for
> >>>>>>>>>>> eeze). Verify that eeze.pc is available where you installed
> >>>>>>>>>>> the EFL
> >>>>>>>>>>>
> >>>>>>>>>>> or :
> >>>>>>>>>>>
> >>>>>>>>>>> 2) build E without eeze support (it's disabled by default)
> >>>>>>>>>>>
> >>>>>>>>>>> Vincent
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> _______________________________________________
> >>>>>>>>>>> enlightenment-users mailing list
> >>>>>>>>>>> enlightenment-users@lists.sourceforge.net
> >>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> >>>>>>>>>> yes, but it really is installed:
> >>>>>>>>>>
> >>>>>>>>>> $:/mnt/opt/e$ ls bin
> >>>>>>>>>>
> >>>>>>>>>> diffeet                  edje_inspector  eetpack efl_debug
> >>>>>>>>>> elementary_codegen      elm_prefs_cc eolian_cxx
> >>>>>>>>>> ecore_evas_convert       edje_pick       eeze_disk_ls efl_debugd
> >>>>>>>>>> elementary_config       elua eolian_gen
> >>>>>>>>>> edje_cc                  edje_player     eeze_mount efreetd
> >>>>>>>>>> elementary_perf         embryo_cc        ethumb
> >>>>>>>>>> edje_codegen             edje_recc       eeze_scanner eina_btlog
> >>>>>>>>>> elementary_quicklaunch  emotion_test     ethumbd
> >>>>>>>>>> edje_decc                edje_watch      eeze_scanner_monitor
> >>>>>>>>>> eina_modinfo    elementary_run          emotion_test-eo
> >>>>>>>>>> ethumbd_client
> >>>>>>>>>> edje_external_inspector  eet             eeze_umount
> >>>>>>>>>> eldbus-codegen
> >>>>>>>>>> elementary_test         eo_debug         vieet
> >>>>>>>>>>
> >>>>>>>>>> and
> >>>>>>>>>>
> >>>>>>>>>> $:/mnt/opt/e/lib/x86_64-linux-gnu$ ls
> >>>>>>>>>>
> >>>>>>>>>> cmake                         libecore_imf.so
> >>>>>>>>>> libefl.so.1                 libembryo.so.1.22.99
> >>>>>>>>>> ecore                         libecore_imf.so.1
> >>>>>>>>>> libefl.so.1.22.99           libemile.so
> >>>>>>>>>> ecore_con                     libecore_imf.so.1.22.99
> >>>>>>>>>> libefreet_mime.so           libemile.so.1
> >>>>>>>>>> ecore_evas                    libecore_input_evas.so
> >>>>>>>>>> libefreet_mime.so.1         libemile.so.1.22.99
> >>>>>>>>>> ecore_imf                     libecore_input_evas.so.1
> >>>>>>>>>> libefreet_mime.so.1.22.99   libemotion.so
> >>>>>>>>>> edje                          libecore_input_evas.so.1.22.99
> >>>>>>>>>> libefreet.so                libemotion.so.1
> >>>>>>>>>> eeze                          libecore_input.so
> >>>>>>>>>> libefreet.so.1              libemotion.so.1.22.99
> >>>>>>>>>> efreet                        libecore_input.so.1
> >>>>>>>>>> libefreet.so.1.22.99        libeo_dbg.so
> >>>>>>>>>> elementary                    libecore_input.so.1.22.99
> >>>>>>>>>> libefreet_trash.so          libeo_dbg.so.1
> >>>>>>>>>> emotion                       libecore_ipc.so
> >>>>>>>>>> libefreet_trash.so.1        libeo_dbg.so.1.22.99
> >>>>>>>>>> ethumb                        libecore_ipc.so.1
> >>>>>>>>>> libefreet_trash.so.1.22.99  libeolian.so
> >>>>>>>>>> ethumb_client                 libecore_ipc.so.1.22.99
> >>>>>>>>>> libeina.so                  libeolian.so.1
> >>>>>>>>>> evas
> >>>>>>>>>>
> >>>>>>>>> and in /opt/e/lib/pkgconfig , is there an eeze.pc ?
> >>>>>>>> Thanks, and sorry for not reading your reply all the way through.
> >>>>>>>> no,
> >>>>>>>> there is no eeze.pc there. there is nothing in /opt/e/lib except a
> >>>>>>>> directory called x86_64-linux-gnu, which does seem to have all the
> >>>>>>>> expected efl lib files and directories, including
> >>>>>>>> pkgconfig/eeze.pc. In
> >>>>>>>> /etc/ld.so.conf.d there is an enlightenment.conf file containing two
> >>>>>>>> lines:
> >>>>>>>>
> >>>>>>>> # enlightenment install into /opt/e
> >>>>>>>> # added x86_64-linux-gnu as recommendation for multi-arch from e
> >>>>>>>> list.
> >>>>>>>> /opt/e/lib
> >>>>>>>> /opt/e/lib/x86_64_linux-gnu
> >>>>>>>>
> >>>>>>>> I tried deleting /opt/e,  commenting out /opt/e/lib/x86_64_linux-gnu
> >>>>>>>> from /etc/ld.so.conf.d/enlightenment.conf, rebooting and rebuilding
> >>>>>>>> efl,  but /opt/e/lib looked the same, empty but with a populated
> >>>>>>>> x86_64_linux-gnu directory.
> >>>>>>>>
> >>>>>>>> When I ran the efl autogen script, before meson, /opt/e/lib would
> >>>>>>>> populate, and /opt/e/lib/x86_64_linuxgnu would also populate.  Not
> >>>>>>>> sure
> >>>>>>>> why /opt/e/lib is a problem now.
> >>>>>>> Can't you just tweak PKG_CONFIG_PATH and LD_LIBRARY_PATH accordingly,
> >>>>>>> i.e. adding the x86_64_linuxgnu dir?
> >>>>>>>
> >>>>>> when I did set PKG_CONFIG_PATH and LD_LIBRARY_PATH like that, building
> >>>>>> enlightenment still said it couldn't find eeze. I looked in
> >>>>>> /opt/e/lib/x85_64_libux-gnu/pkgconfig and eeze.pc was there, along
> >>>>>> with
> >>>>>> the rest of the efl lib .pc files. I checked the
> >>>>>> enlighenment/build/meson-logs/meson-log.txt and saw the same error
> >>>>>> that
> >>>>>> I initially reported. I checked and the above PATHs were still set to
> >>>>>> the x86_64_linux-gnu directory.
> >>>>> Clean sources? Or configured sources? In the latter case it could be
> >>>>> that all was cached and changing the environment is useless.
> >>>> I deleted efl and enlightenment sources, fresh download, same results.
> >>>> Besides /etc/ld.so.conf or /etc/ld.so.conf.d, is there any other place
> >>>> where that /lib/x86_64_linux-gnu could be getting set? I wonder if
> >>>> that's what's causing the problem.
> >>>>
> >>> I cannot tell you why, but this is the standard value of meson on some
> >>> systems.
> >>> You can look at the standard directories of meson if you go to the build
> >>> directory of efl and run "meson configure"
> >>> The specific directories can then be changed via "meson --libdir <asdf>"
> >>> or --datadir or --bindir (meson setup --help will tell you all of them).
> >>>
> >>> I hope i could help you,
> >>>      bu5hm4n
> >> I ran meson configure from the efl directory and saw the following,
> >> which I think looks correct:
> >>
> >> Directories:
> >>    Option         Current Value Description
> >>    ------         ------------- -----------
> >>    bindir         bin                  Executable directory
> >>    datadir        share                Data file directory
> >>    includedir     include              Header file directory
> >>    infodir        share/info           Info page directory
> >>    libdir         lib/x86_64-linux-gnu Library directory
> >>    libexecdir     libexec              Library executable directo
> >>    localedir      share/locale         Locale data directory
> >>    localstatedir  var                  Localstate data directory
> >>    mandir         share/man            Manual page directory
> >>    prefix         /opt/e               Installation prefix
> >>    sbindir        sbin                 System executable directory
> >>    sharedstatedir com                  Architecture-independent data
> >> directory
> >>    sysconfdir     etc                  Sysconf data directory
> >>
> >>
> >> I wonder if anyone else has been able to install into something other
> >> than /usr/local? If so the problem is definitely with my
> >> system/configuration, which is Debian/sid.
> > I'm on buster and i always install in /opt/e17. Well, not so frequently,
> > the last time was about a month ago :)
> >
> > I remember that I faced the same issue some time ago, i see that in the
> > script i use there is still this line but commented out because at some
> > point i didn't need it anymore:
> > #cp -av $TARGET/lib/x86_64-linux-gnu/* $TARGET/lib
> >
> > $TARGET is of course /opt/e17 and as a workaround i just did moved all
> > the stuff installed in x86_64-linux-gnu in the parent dir. Then, at some
> > point something changed and the issue disappeared, but note that this
> > affected only enlightenment. Efl didn't use meson at that time and the
> > last time i still built it with autotools.
> >
> yes, that's why I like to install into a separate directory in opt. When 
> I want to install the latest version, I just rename /opt/e to 
> /opt/e/the-date. The last time I built e successfully was on 2019-5-19. 
> Then I also had to build efl with autotools, but e, ephoto, rage, 
> terminology worked with meson/ninja. But now autotools for efl is no 
> more. I also tried copying /opt/e/lib/x86_64-linux-gnu contents into 
> /opt/e/lib, but enlightenment still failed to see eeze.
> 
> Thanks for everyone's suggestions and help. I'll keep trying, maybe get 
> it figured out.

ld.so.conf and ldconifg are for RUNTIME (ld.so) usage. not compile time. a
compile time ldconfig/ld.so.conf are not relevant unless something RUNS that
needs those libs.

what you need to ensure it your PKG_CONFIG_PATH has all the relevant locations
in it. like:

$ echo $PKG_CONFIG_PATH
/usr/local/lib/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig

for example. it's a search path. the pkgconfig dirs - wherever they are, should
be in it. if you install in "non standard locations" whihc the default search
path doesn't look in (like /opt/...) then it's up to you to set your
PKG_CONFIG_PATH like you would set PATH and so on. so set this before beginning
your build and you should be fine.


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
Carsten Haitzler - ras...@rasterman.com



_______________________________________________
enlightenment-users mailing list
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to