unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#26050: 25.2; configure: no libxml2 support with libxml2 installed
@ 2017-03-10 16:07 N. Jackson
  2017-03-10 16:40 ` Eli Zaretskii
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: N. Jackson @ 2017-03-10 16:07 UTC (permalink / raw)
  To: 26050

With Emacs from the emacs-25.2.rc2 release candidate tarball,
configure is omitting support for libxml2. (I discovered this
because eww no longer works.)

(The released version of emacs-25.1, also built from the tarball
(on 2016-09-19) did not have this problem.)

  $ ./configure
  .
  .
  .
  checking for LIBXML2... no
  .
  .
  .
    Does Emacs use -lxml2?                                  no
  .
  .
  .

  $ dnf list libxml2
  Last metadata expiration check: 1:42:01 ago on Fri Mar 10 08:15:37 2017.
  Installed Packages
  libxml2.x86_64                         2.9.3-4.fc25                          @anaconda

FWIW, the indentation of the conditional structures in the
relevant part of configure is confusing; the indentation belies
the logical nesting. Also some of the lines are excessively long.
In any case:

      16321 ### Use libxml (-lxml2) if available
      16322 ### mingw32 doesn't use -lxml2, since it loads the library dynamically.
      16323 HAVE_LIBXML2=no
true  16324 if test "${with_xml2}" != "no"; then
      16325   ### I'm not sure what the version number should be, so I just guessed.
      16326 
      16327 pkg_failed=no
      16328 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBXML2" >&5
      16329 $as_echo_n "checking for LIBXML2... " >&6; }
      16330 
false 16331 if test -n "$LIBXML2_CFLAGS"; then
      16332     pkg_cv_LIBXML2_CFLAGS="$LIBXML2_CFLAGS"
true  16333  elif test -n "$PKG_CONFIG"; then
false 16334     if test -n "$PKG_CONFIG" && \
      16335     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 > 2.6.17\""; } >&5
      16336   ($PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17") 2>&5
      16337   ac_status=$?
      16338   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
      16339   test $ac_status = 0; }; then
      16340   pkg_cv_LIBXML2_CFLAGS=`$PKG_CONFIG --cflags "libxml-2.0 > 2.6.17" 2>/dev/null`
      16341                 test "x$?" != "x0" && pkg_failed=yes
      16342 else
-->   16343   pkg_failed=yes
      16344 fi
      16345  else
      16346     pkg_failed=untried
      16347 fi
false 16348 if test -n "$LIBXML2_LIBS"; then
      16349     pkg_cv_LIBXML2_LIBS="$LIBXML2_LIBS"
true  16350  elif test -n "$PKG_CONFIG"; then
false 16351     if test -n "$PKG_CONFIG" && \
      16352     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 > 2.6.17\""; } >&5
      16353   ($PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17") 2>&5
      16354   ac_status=$?
      16355   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
      16356   test $ac_status = 0; }; then
      16357   pkg_cv_LIBXML2_LIBS=`$PKG_CONFIG --libs "libxml-2.0 > 2.6.17" 2>/dev/null`
      16358                 test "x$?" != "x0" && pkg_failed=yes
      16359 else
-->   16360   pkg_failed=yes
      16361 fi
      16362  else
      16363     pkg_failed=untried
      16364 fi

The marginal annotations show which conditionals test true and
which test false, and shows where we set pkg_failed to yes.


In GNU Emacs 25.2.11 (x86_64-unknown-linux-gnu, GTK+ Version 3.22.8)
 of 2017-03-03 built on moondust.localdomain
Windowing system distributor 'Fedora Project', version 11.0.11901000
System Description:	Fedora release 25 (Twenty Five)

Configured using:
 'configure CFLAGS=-O3'

Configured features:
XPM JPEG TIFF GIF PNG IMAGEMAGICK SOUND DBUS GSETTINGS NOTIFY GNUTLS
FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11

Important settings:
  value of $LANG: en_CA.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix

Features:
(shadow bbdb-message emacsbug sendmail gnus-async qp mail-extr gnus-ml
disp-table mm-archive url-handlers nnrss xml nndraft nnmh utf-7 server
pinentry epa-file epa derived nnfolder bbdb-gnus bbdb-mua nnnil
gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp
gnus-cache sh-script smie executable bat-mode misearch multi-isearch
network-stream nsm starttls url-http url-gw url-cache url-auth eww
mm-url url-queue shr dom browse-url goto-addr thingatpt view linum
cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine
cc-vars cc-defs flyspell ispell sage sage-load rx emms-bookmarks
emms-cue emms-mode-line-icon emms-browser sort emms-playlist-sort
emms-last-played emms-player-xine emms-player-mpd emms-playing-time
emms-lyrics emms-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie url-domsuf url-util url-parse url-vars
emms-streams emms-tag-editor emms-mark emms-mode-line emms-cache
emms-info-ogginfo emms-info-mp3info emms-info later-do
emms-playlist-mode emms-player-vlc emms-player-mplayer
emms-player-simple emms-source-playlist emms-source-file locate
emms-setup emms emms-compat calfw-org calfw holidays hol-loaddefs cl
pdf-occur ibuf-ext ibuffer tablist tablist-filter semantic/wisent/comp
semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util
semantic semantic/tag semantic/lex semantic/fw mode-local cedet
pdf-isearch let-alist pdf-misc imenu pdf-tools compile cus-edit pdf-view
bookmark pp pdf-cache pdf-info tq pdf-util org-contacts org-capture
gnus-art mm-uu mml2015 mm-view mml-smime smime dig mailcap gnus-sum
gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source tls
gnutls utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message
rfc822 mml mml-sec epg mm-decode mm-bodies mm-encode mail-parse rfc2231
rfc2047 rfc2045 ietf-drums gmm-utils mailheader gnus-win gnus gnus-ems
nnheader mail-utils org-eldoc org-w3m org-rmail org-mhe org-irc org-info
org-habit org-gnus org-docview doc-view subr-x jka-compr image-mode
dired org-bibtex bibtex org-bbdb org-agenda org-element avl-tree org
org-macro org-footnote org-pcomplete org-list org-faces org-entities
noutline outline easy-mmode org-version ob-latex ob-emacs-lisp ob
ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint tramp
tramp-compat auth-source cl-seq eieio eieio-core cl-macs gnus-util
mm-util help-fns mail-prsvr password-cache tramp-loaddefs trampver
ucs-normalize shell pcomplete advice comint ansi-color ring ob-core
ob-eval org-compat org-macs org-loaddefs format-spec find-func
bbdb-anniv diary-lib diary-loaddefs cal-menu calendar cal-loaddefs
bbdb-com crm mailabbrev bbdb bbdb-site timezone bbdb-loaddefs finder-inf
tex-site info package epg-config seq byte-opt gv bytecomp byte-compile
cl-extra help-mode cconv edmacro kmacro recentf tree-widget wid-edit
easymenu battery time wheatgrass-theme paren savehist saveplace
elec-pair desktop frameset cl-loaddefs pcase cl-lib delsel cua-base
cus-start cus-load time-date mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan
thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese charscript
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote dbusbind inotify
dynamic-setting system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 840029 275156)
 (symbols 48 104067 77)
 (miscs 40 19960 6933)
 (strings 32 203674 9947)
 (string-bytes 1 9233489)
 (vectors 16 78401)
 (vector-slots 8 1246250 9319)
 (floats 8 634 928)
 (intervals 56 34155 0)
 (buffers 976 80))





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#26050: 25.2; configure: no libxml2 support with libxml2 installed
  2017-03-10 16:07 bug#26050: 25.2; configure: no libxml2 support with libxml2 installed N. Jackson
@ 2017-03-10 16:40 ` Eli Zaretskii
  2017-03-10 18:42   ` N. Jackson
  2017-03-10 16:50 ` Noam Postavsky
  2017-03-10 17:58 ` Glenn Morris
  2 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2017-03-10 16:40 UTC (permalink / raw)
  To: N. Jackson; +Cc: 26050

> From: nljlistbox2@gmail.com (N. Jackson)
> Date: Fri, 10 Mar 2017 11:07:19 -0500
> 
> With Emacs from the emacs-25.2.rc2 release candidate tarball,
> configure is omitting support for libxml2. (I discovered this
> because eww no longer works.)
> 
> (The released version of emacs-25.1, also built from the tarball
> (on 2016-09-19) did not have this problem.)
> 
>   $ ./configure
>   .
>   .
>   .
>   checking for LIBXML2... no
>   .
>   .
>   .
>     Does Emacs use -lxml2?                                  no
>   .
>   .
>   .
> 
>   $ dnf list libxml2
>   Last metadata expiration check: 1:42:01 ago on Fri Mar 10 08:15:37 2017.
>   Installed Packages
>   libxml2.x86_64                         2.9.3-4.fc25                          @anaconda

What does config.log say about the libxml2 tests?





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#26050: 25.2; configure: no libxml2 support with libxml2 installed
  2017-03-10 16:07 bug#26050: 25.2; configure: no libxml2 support with libxml2 installed N. Jackson
  2017-03-10 16:40 ` Eli Zaretskii
@ 2017-03-10 16:50 ` Noam Postavsky
  2017-03-10 17:58 ` Glenn Morris
  2 siblings, 0 replies; 7+ messages in thread
From: Noam Postavsky @ 2017-03-10 16:50 UTC (permalink / raw)
  To: N. Jackson; +Cc: 26050

On Fri, Mar 10, 2017 at 11:07 AM, N. Jackson <nljlistbox2@gmail.com> wrote:
>   $ dnf list libxml2
>   Last metadata expiration check: 1:42:01 ago on Fri Mar 10 08:15:37 2017.
>   Installed Packages
>   libxml2.x86_64                         2.9.3-4.fc25                          @anaconda
>

Are you missing the -devel package, or does 'dnf' require some more
options to list it?





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#26050: 25.2; configure: no libxml2 support with libxml2 installed
  2017-03-10 16:07 bug#26050: 25.2; configure: no libxml2 support with libxml2 installed N. Jackson
  2017-03-10 16:40 ` Eli Zaretskii
  2017-03-10 16:50 ` Noam Postavsky
@ 2017-03-10 17:58 ` Glenn Morris
  2 siblings, 0 replies; 7+ messages in thread
From: Glenn Morris @ 2017-03-10 17:58 UTC (permalink / raw)
  To: N. Jackson; +Cc: 26050

N. Jackson wrote:

> (The released version of emacs-25.1, also built from the tarball
> (on 2016-09-19) did not have this problem.)
[...]
> System Description:	Fedora release 25 (Twenty Five)

But Fedora 25 did not exist on 2016-09-19, so presumably you built 25.1
before performing a system upgrade. So who knows what's changed in-between.

> FWIW, the indentation of the conditional structures in the
> relevant part of configure is confusing; the indentation belies
> the logical nesting. Also some of the lines are excessively long.

It's a generated file. It's often simpler to read configure.ac.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#26050: 25.2; configure: no libxml2 support with libxml2 installed
  2017-03-10 16:40 ` Eli Zaretskii
@ 2017-03-10 18:42   ` N. Jackson
  2017-03-10 18:49     ` Eli Zaretskii
  2017-03-10 19:13     ` Noam Postavsky
  0 siblings, 2 replies; 7+ messages in thread
From: N. Jackson @ 2017-03-10 18:42 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 26050

tags 26050 notabug
close 26050
done

Sorry, this was a user error.

I simply didn't have the libxml2 development package on this
system. Gets me every time! (Although usually I don't get as far
as filing a bug report.)

So the fix was as simple as:

  # dnf install libxml2-devel


At 18:40 +0200 on Friday 2017-03-10, Eli Zaretskii wrote:
>
> What does config.log say about the libxml2 tests?

Sorry, I'd forgotten about that file! Here's what it was saying earlier:

  configure-test:16329: checking for LIBXML2
  configure-test:16338: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
  Package libxml-2.0 was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libxml-2.0.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libxml-2.0' found
  configure-test:16341: $? = 1
  configure-test:16361: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
  Package libxml-2.0 was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libxml-2.0.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libxml-2.0' found
  configure-test:16364: $? = 1
  configure-test:16381: result: no
  No package 'libxml-2.0' found

Now that everything works, it says:

  configure:16328: checking for LIBXML2
  configure:16335: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
  configure:16338: $? = 0
  configure:16352: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
  configure:16355: $? = 0
  configure:16393: result: yes
  configure:16428: checking for htmlReadMemory in -lxml2
  configure:16453: gcc -o conftest  -g3 -O2       conftest.c -lxml2 -lxml2 -lX11   >&5 
  configure:16453: $? = 0
  configure:16462: result: yes

Is it my imagination, or was there a time in the past when
configure printed a friendly message suggesting the installation
of the development package for a library when it failed to find
something like this?

N.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#26050: 25.2; configure: no libxml2 support with libxml2 installed
  2017-03-10 18:42   ` N. Jackson
@ 2017-03-10 18:49     ` Eli Zaretskii
  2017-03-10 19:13     ` Noam Postavsky
  1 sibling, 0 replies; 7+ messages in thread
From: Eli Zaretskii @ 2017-03-10 18:49 UTC (permalink / raw)
  To: N. Jackson; +Cc: 26050

> From: nljlistbox2@gmail.com (N. Jackson)
> Cc: 26050@debbugs.gnu.org
> Date: Fri, 10 Mar 2017 13:42:17 -0500
> 
> Sorry, this was a user error.

No worries.

>   configure-test:16329: checking for LIBXML2
>   configure-test:16338: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
>   Package libxml-2.0 was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libxml-2.0.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libxml-2.0' found
>   configure-test:16341: $? = 1
>   configure-test:16361: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
>   Package libxml-2.0 was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libxml-2.0.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libxml-2.0' found
>   configure-test:16364: $? = 1
>   configure-test:16381: result: no
>   No package 'libxml-2.0' found
> 
> Now that everything works, it says:
> 
>   configure:16328: checking for LIBXML2
>   configure:16335: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
>   configure:16338: $? = 0
>   configure:16352: $PKG_CONFIG --exists --print-errors "libxml-2.0 > 2.6.17"
>   configure:16355: $? = 0
>   configure:16393: result: yes
>   configure:16428: checking for htmlReadMemory in -lxml2
>   configure:16453: gcc -o conftest  -g3 -O2       conftest.c -lxml2 -lxml2 -lX11   >&5 
>   configure:16453: $? = 0
>   configure:16462: result: yes
> 
> Is it my imagination, or was there a time in the past when
> configure printed a friendly message suggesting the installation
> of the development package for a library when it failed to find
> something like this?

The configure script still does that, but the above message comes from
pkg-config related tests, not from configure.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#26050: 25.2; configure: no libxml2 support with libxml2 installed
  2017-03-10 18:42   ` N. Jackson
  2017-03-10 18:49     ` Eli Zaretskii
@ 2017-03-10 19:13     ` Noam Postavsky
  1 sibling, 0 replies; 7+ messages in thread
From: Noam Postavsky @ 2017-03-10 19:13 UTC (permalink / raw)
  To: N. Jackson; +Cc: 26050

On Fri, Mar 10, 2017 at 1:42 PM, N. Jackson <nljlistbox2@gmail.com> wrote:
>
> Is it my imagination, or was there a time in the past when
> configure printed a friendly message suggesting the installation
> of the development package for a library when it failed to find
> something like this?
>

This is the case for image libraries (xpm, jpeg, png, gif, tiff) and
gnutls, so you may be thinking of that.

configure.ac lines 3591-3616:

dnl Check for required libraries.
MISSING=
WITH_NO=
if test "${HAVE_X11}" = "yes"; then
  test "${with_xpm}" != "no" && test "${HAVE_XPM}" != "yes" &&
    MISSING="libXpm" && WITH_NO="--with-xpm=no"
  test "${with_jpeg}" != "no" && test "${HAVE_JPEG}" != "yes" &&
    MISSING="$MISSING libjpeg" && WITH_NO="$WITH_NO --with-jpeg=no"
  test "${with_png}" != "no" && test "${HAVE_PNG}" != "yes" &&
    MISSING="$MISSING libpng" && WITH_NO="$WITH_NO --with-png=no"
  test "${with_gif}" != "no" && test "${HAVE_GIF}" != "yes" &&
    MISSING="$MISSING libgif/libungif" && WITH_NO="$WITH_NO --with-gif=no"
  test "${with_tiff}" != "no" && test "${HAVE_TIFF}" != "yes" &&
    MISSING="$MISSING libtiff" && WITH_NO="$WITH_NO --with-tiff=no"
fi
test "${with_gnutls}" != "no" && test "${HAVE_GNUTLS}" != "yes" &&
  MISSING="$MISSING gnutls" && WITH_NO="$WITH_NO --with-gnutls=no"
if test "X${MISSING}" != X; then
  AC_MSG_ERROR([The following required libraries were not found:
    $MISSING
Maybe some development libraries/packages are missing?
If you don't want to link with them give
    $WITH_NO
as options to configure])
fi





^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-03-10 19:13 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-10 16:07 bug#26050: 25.2; configure: no libxml2 support with libxml2 installed N. Jackson
2017-03-10 16:40 ` Eli Zaretskii
2017-03-10 18:42   ` N. Jackson
2017-03-10 18:49     ` Eli Zaretskii
2017-03-10 19:13     ` Noam Postavsky
2017-03-10 16:50 ` Noam Postavsky
2017-03-10 17:58 ` Glenn Morris

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).