[
https://issues.apache.org/jira/browse/ARROW-7893?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17129787#comment-17129787
]
Kouhei Sutou commented on ARROW-7893:
-------------------------------------
Sure.
It's the {{configure}} stage in
https://github.com/apache/arrow/tree/master/c_glib#how-to-build-by-users . In
{{configure}}, the GLib detection does the followings:
1. Find GLib by {{pkg-config}}
2. Build a program that verifies the found GLib version
3. Run the program ({{LD_LIBRARY_PATH}} is needed here)
See also:
https://gitlab.gnome.org/GNOME/glib/-/blob/master/m4macros/glib-2.0.m4#L92-165
The GLib version verification isn't ran with Meson. We don't need to set
{{LD_LIBRARY_PATH}} with Meson.
https://github.com/apache/arrow/tree/master/c_glib#how-to-build-by-users also
describes how to build with Meson.
> [Developer][GLib] Document GLib development workflow when using conda
> environment on GTK-based Linux systems
> ------------------------------------------------------------------------------------------------------------
>
> Key: ARROW-7893
> URL: https://issues.apache.org/jira/browse/ARROW-7893
> Project: Apache Arrow
> Issue Type: Improvement
> Components: Documentation, GLib
> Reporter: Wes McKinney
> Assignee: Kouhei Sutou
> Priority: Major
>
> I periodically deal with annoying errors like:
> {code}
> checking for GLIB - version >= 2.32.4...
> *** 'pkg-config --modversion glib-2.0' returned 2.58.3, but GLIB (2.56.4)
> *** was found! If pkg-config was correct, then it is best
> *** to remove the old version of GLib. You may also be able to fix the error
> *** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing
> *** /etc/ld.so.conf. Make sure you have run ldconfig if that is
> *** required on your system.
> *** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH
> *** to point to the correct configuration files
> no
> configure: error: GLib isn't available
> make: *** No targets specified and no makefile found. Stop.
> make: *** No rule to make target 'install'. Stop.
> Traceback (most recent call last):
> 2: from /home/wesm/code/arrow/c_glib/test/run-test.rb:30:in `<main>'
> 1: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in
> `require'
> /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require':
> cannot load such file -- gi (LoadError)
> {code}
> The problem is that I have one version of glib on my Linux system while
> another in the activated conda environment, it seems that there is a conflict
> even though {{$PKG_CONFIG_PATH}} is set to ignore system directories
> https://gist.github.com/wesm/e62bf4517468be78200e8dd6db0fc544
--
This message was sent by Atlassian Jira
(v8.3.4#803005)