View Issue Details

IDCategoryLast Update
0008627bugs2021-03-18 15:50
ReporterzonerAssigned Tox42 
Reproducibilityalways 
Status resolvedResolutionno change required 
PlatformGNUOSLinuxOS Version(any)
Product Version 
Fixed in Version 
Summary0008627: waf configure does not check whether libarchive-dev is installed
Descriptionwhen performing "./waf configure" on my Debian linux system, the configure step succeeds even if libarchive-dev is not installed. This results in a compilation error during the building process.
Steps To Reproducedo not install libarchive-dev
attempt to build ardour
TagsNo tags attached.

Activities

x42

2021-03-18 15:29

administrator   ~0025609

I cannot reproduce this. When uninstalling libarchive, the following happens
Checking for boost library >= 1.56                   : ok 
Checking for program 'pkg-config'                    : /usr/bin/pkg-config 
Checking for 'alsa'                                  : yes 
Checking for 'libpulse'                              : yes 
Checking for 'glib-2.0' >= 2.28                      : yes 
Checking for 'gthread-2.0' >= 2.2                    : yes 
Checking for 'glibmm-2.4' >= 2.32.0                  : yes 
Checking for 'sndfile' >= 1.0.18                     : yes 
Checking for 'giomm-2.4' >= 2.2                      : yes 
Checking for 'libcurl' >= 7.0.0                      : yes 
Checking for 'libarchive' >= 3.0.0                   : not found 
The configuration failed


There is a check at https://github.com/Ardour/ardour/blob/3bda6020b949e0ebc/wscript#L1156

What happens when you run `pkg-config --debug libarchive` ? Maybe you have a lingering .pc file somewhere in $HOME or /usr/local?

zoner

2021-03-18 15:47

reporter   ~0025610

Ah, interesting! You are right:

$ pkg-config --debug libarchive
no output option set, defaulting to --exists
Error printing disabled by default due to use of output options --exists, --atleast/exact/max-version, --list-all or no output option at all. Value of --print-errors: 0
Error printing disabled
Adding virtual 'pkg-config' package to list of known packages
Looking for package 'libarchive'
Looking for package 'libarchive-uninstalled'
Reading 'libarchive' from file '/usr/local/lib/pkgconfig/libarchive.pc'
Parsing package file '/usr/local/lib/pkgconfig/libarchive.pc'
  line>prefix=/usr/local
 Variable declaration, 'prefix' has value '/usr/local'
  line>exec_prefix=${prefix}
 Variable declaration, 'exec_prefix' has value '/usr/local'
  line>libdir=${exec_prefix}/lib
 Variable declaration, 'libdir' has value '/usr/local/lib'
  line>includedir=${prefix}/include
 Variable declaration, 'includedir' has value '/usr/local/include'
  line>
  line>Name: libarchive
  line>Description: library that can create and read several streaming archive formats
  line>Version: 3.4.1dev
  line>Cflags: -I${includedir}
  line>Cflags.private: -DLIBARCHIVE_STATIC
Unknown keyword 'Cflags.private' in '/usr/local/lib/pkgconfig/libarchive.pc'
  line>Libs: -L${libdir} -larchive
  line>Libs.private: -lzlibstatic -lcrypto -lexpat -lssl
Unknown keyword 'Libs.private' in '/usr/local/lib/pkgconfig/libarchive.pc'
Path position of 'libarchive' is 2
Adding 'libarchive' to list of known packages

You may close this ticket since it's clearly user error on my part! Thanks.

Issue History

Date Modified Username Field Change
2021-03-18 13:42 zoner New Issue
2021-03-18 15:29 x42 Note Added: 0025609
2021-03-18 15:47 zoner Note Added: 0025610
2021-03-18 15:50 x42 Assigned To => x42
2021-03-18 15:50 x42 Status new => resolved
2021-03-18 15:50 x42 Resolution open => no change required