Skip Menu |

This queue is for tickets about the POSIX-1003 CPAN distribution.

Report information
The Basics
Id: 132306
Status: open
Priority: 0/
Queue: POSIX-1003

People
Owner: Nobody in particular
Requestors: SREZIC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.98
Fixed in: (no value)



Subject: undefined symbol: minor
On some linux systems the module compilation fails: ... # Failed test 'require POSIX::1003::Module;' # at t/01use.t line 30. # Tried to require 'POSIX::1003::Module'. # Error: Can't load 'blib/arch/auto/POSIX/1003/1003.so' for module POSIX::1003: blib/arch/auto/POSIX/1003/1003.so: undefined symbol: minor at /usr/lib/x86_64-linux-gnu/perl/5.30/DynaLoader.pm line 193. # # Compilation failed in require at (eval 13) line 2. ...
On 2020-04-06 13:27:30, SREZIC wrote: Show quoted text
> On some linux systems the module compilation fails: > > ... > # Failed test 'require POSIX::1003::Module;' > # at t/01use.t line 30. > # Tried to require 'POSIX::1003::Module'. > # Error: Can't load 'blib/arch/auto/POSIX/1003/1003.so' for > module POSIX::1003: blib/arch/auto/POSIX/1003/1003.so: undefined > symbol: minor at /usr/lib/x86_64-linux-gnu/perl/5.30/DynaLoader.pm > line 193. > # # Compilation failed in require at (eval 13) line 2. > ...
This seems to happen on newer linux systems, e.g. fedora31, centos8, debian10.
On Mon Apr 06 13:41:02 2020, SREZIC wrote: Show quoted text
> On 2020-04-06 13:27:30, SREZIC wrote:
> > On some linux systems the module compilation fails: > > > > ... > > # Failed test 'require POSIX::1003::Module;' > > # at t/01use.t line 30. > > # Tried to require 'POSIX::1003::Module'. > > # Error: Can't load 'blib/arch/auto/POSIX/1003/1003.so' for > > module POSIX::1003: blib/arch/auto/POSIX/1003/1003.so: undefined > > symbol: minor at /usr/lib/x86_64-linux-gnu/perl/5.30/DynaLoader.pm > > line 193. > > # # Compilation failed in require at (eval 13) line 2. > > ...
> > This seems to happen on newer linux systems, e.g. fedora31, centos8, > debian10.
This is a bug in glibc: they removed major/minor from unistd.h into sys/sysmacros.h but made some mistakes. I had a very weird compilation error when I added sys/types.h high in my 1003.xs file. Totally strange, so the cause was hard to find. When I moved it down in the XS file, the errors disappeared. That's what took me so long to respond. I was planning to rewrite POSIX-1003 using Config::AutoConfig, but due to the my refusal to accept the "Code of Conduct" for Perl conferences I will withdraw from the public Perl community. I'll probably not release new modules to the public, but will continue to maintain what already is on CPAN. I have moved POSIX-1003 development to github and made a new release. Based on the cpantesters reports, I may be able to find-out which glibc versions were broken in this respect. I do accept pull-requests as well ;-)