[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: tarlz 0.16 build failure on FreeBSD 11.3

From: Matias Fonzo
Subject: Re: tarlz 0.16 build failure on FreeBSD 11.3
Date: Fri, 01 May 2020 17:35:47 -0300
User-agent: Roundcube Webmail/1.3.8

El 2020-05-01 13:09, Antonio Diaz Diaz escribió:
Hello David,

David Glover-Aoki wrote:
tarlz is not included in the FreeBSD ports so I'm trying to build it from source, but I get the following error:

c++ -O2 -c create.cc -o create.o
create.cc:33:10: fatal error: 'sys/sysmacros.h' file not found
#include<sys/sysmacros.h>               // for major, minor

Thank you very much for reporting this. It seems that sys/sysmacros.h
is not part of POSIX, in spite of its macros being needed to
encode/decode device numbers in tar/pax archives, and some POSIX
systems do not provide it.

Could you, please, try including sys/sysmacros.h conditionally in
create.cc and extract.cc like in the following example (or with other
macro suitable for FreeBSD), and tell me if it compiles. Thanks.

#if !defined __FreeBSD__
#include <sys/sysmacros.h>              // for major, minor

It seems that the major / minor / makedev are available through sys/types.h on some BSDs, I can't find a direct source of the information, yet. But I am seeing some bug reports and changes like this[1].

[1] https://stackoverflow.com/questions/35392291/how-to-convert-between-a-dev-t-and-major-minor-device-numbers/35392350

reply via email to

[Prev in Thread] Current Thread [Next in Thread]