Bad defines in archive_pack_dev.c

build

#1

Operating system: Xubuntu 18 LTS
Slicer version: 4.10.1
Expected behavior: Slicer compiles
Actual behavior: Slicer doesn’t compile

/home/wvxvw/src/Slicer/Slicer-SuperBuild-Debug/LibArchive/libarchive/archive_pack_dev.c:114:13: error: In the GNU C Library, “minor” is defined
by <sys/sysmacros.h>. For historical compatibility, it is
currently defined by <sys/types.h> as well, but we plan to
remove this soon. To use “minor”, include <sys/sysmacros.h>
directly. If you did not intend to use a system-defined macro
“minor”, you should undefine it after including <sys/types.h>. [-Werror]
else if ((unsigned long)minor(dev) != numbers[1])
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This error comes from generated code, and I’m not familiar enough with CMake / the project’s structure to be able to fix it. Any pointers?

gcc version is 7.3.0, Qt version is 5.11.3, CMake version is 3.8.2, installed, as per instruction from a tarball rather than using the one from distro packages.

As an aside, it is impossible to create an account in Slicer bug tracker, I’m being told that “Your account may be disabled or blocked or the username/password you entered is incorrect.”, while there could hardly be any reason to block me (I’ve not done anything yet :wink: and I’m certain that my username / password are correct.


(Steve Pieper) #2

Hi @wvxvw -

libarchive causes problems from time to time but usually gets fixed. I haven’t tried that particular combination myself but maybe someone has suggestions.

Regarding mantis, I assume you have the same account name there and the account looks fine from the admin panel. I sent you a password reset so let’s see if that clears things up. Thanks for your help.