Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't install Alien-Libxml2 on Mac OS Ventura #40

Open
tyrin opened this issue Aug 13, 2023 · 1 comment
Open

Can't install Alien-Libxml2 on Mac OS Ventura #40

tyrin opened this issue Aug 13, 2023 · 1 comment

Comments

@tyrin
Copy link

tyrin commented Aug 13, 2023

Can't install on macos Ventura.
I need to install Alien::Libxml2 so I can install XML::LibXML. It fails
I'm adding my comments with a ------------ so it's clear it's commentary

------------perlbrew can't find it at all as you can see

(base) tavery-ltm3phu:code tavery$ cpanm Alien::LibXML2
! Finding Alien::LibXML2 on cpanmetadb failed.
! Finding Alien::LibXML2 () on mirror http://www.cpan.org failed.
! Couldn't find module or a distribution Alien::LibXML2
------------I tried using cpan to install the developer version
(base) tavery-ltm3phu:code tavery$ cpan install PLICEASE/Alien-Libxml2-0.19.tar.gz
Loading internal logger. Log::Log4perl recommended for better logging
Reading '/Users/tavery/.cpan/Metadata'
  Database was generated on Sun, 13 Aug 2023 15:54:04 GMT
Checksum for /Users/tavery/.cpan/sources/authors/id/P/PL/PLICEASE/Alien-Libxml2-0.19.tar.gz ok
'YAML' not installed, will not store persistent state
Configuring P/PL/PLICEASE/Alien-Libxml2-0.19.tar.gz with Makefile.PL
Alien::Build::Plugin::PkgConfig::Negotiate> Using PkgConfig plugin: PkgConfig::PP
Alien::Build::CommandSequence> + xml2-config --version
Alien::Build::CommandSequence> [output consumed by Alien::Build recipe]
Alien::Build::CommandSequence> + xml2-config --cflags
Alien::Build::CommandSequence> [output consumed by Alien::Build recipe]
Alien::Build::CommandSequence> + xml2-config --libs
Alien::Build::CommandSequence> [output consumed by Alien::Build recipe]
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Alien::Libxml2
Writing MYMETA.yml and MYMETA.json
  PLICEASE/Alien-Libxml2-0.19.tar.gz
  /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin/perl Makefile.PL -- OK
Running make for P/PL/PLICEASE/Alien-Libxml2-0.19.tar.gz
cp lib/Alien/Libxml2.pm blib/lib/Alien/Libxml2.pm
"/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin/perl" -MAlien::Build::MM=cmd -e prefix site /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0/darwin-2level /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/darwin-2level 
Alien::Build::Plugin::PkgConfig::Negotiate> Using PkgConfig plugin: PkgConfig::PP
main> prefix /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/darwin-2level/auto/share/dist/Alien-Libxml2
"/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin/perl" -MAlien::Build::MM=cmd -e version 0.19
Alien::Build::Plugin::PkgConfig::Negotiate> Using PkgConfig plugin: PkgConfig::PP
"/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin/perl" -MAlien::Build::MM=cmd -e download
Alien::Build::Plugin::PkgConfig::Negotiate> Using PkgConfig plugin: PkgConfig::PP
"/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin/perl" -MAlien::Build::MM=cmd -e build
Alien::Build::Plugin::PkgConfig::Negotiate> Using PkgConfig plugin: PkgConfig::PP
Alien::Build::Plugin::Core::Legacy> adding legacy hash to config
Alien::Build::Plugin::Core::Gather> mkdir -p /Users/tavery/.cpan/build/Alien-Libxml2-0.19-7/blib/lib/auto/share/dist/Alien-Libxml2/_alien
  PLICEASE/Alien-Libxml2-0.19.tar.gz
  /usr/bin/make -- OK
The current configuration of allow_installing_outdated_dists is 'ask/no', but for this option we would need 'CPAN::DistnameInfo' installed. Please install 'CPAN::DistnameInfo' as soon as possible. As long as we are not equipped with 'CPAN::DistnameInfo' this option does not take effect
Running make test for PLICEASE/Alien-Libxml2-0.19.tar.gz
"/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin/perl" -MAlien::Build::MM=cmd -e test
Alien::Build::Plugin::PkgConfig::Negotiate> Using PkgConfig plugin: PkgConfig::PP
PERL_DL_NONLAZY=1 "/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_diag.t ........ 1/? # 
# 
# 
# HARNESS_ACTIVE=1
# HARNESS_VERSION=3.44
# LANG=en_US.UTF-8
# PERL5LIB=/Users/tavery/.cpan/build/Alien-Libxml2-0.19-7/blib/lib:/Users/tavery/.cpan/build/Alien-Libxml2-0.19-7/blib/arch:
# PERL5OPT=
# PERL5_CPANPLUS_IS_RUNNING=16066
# PERL5_CPAN_IS_RUNNING=16066
# PERLBREW_HOME=/Users/tavery/.perlbrew
# PERLBREW_MANPATH=/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/man
# PERLBREW_PATH=/Users/tavery/perl5/perlbrew/bin:/Users/tavery/perl5/perlbrew/perls/perl-5.38.0/bin
# PERLBREW_PERL=perl-5.38.0
# PERLBREW_ROOT=/Users/tavery/perl5/perlbrew
# PERLBREW_SHELLRC_VERSION=0.97
# PERLBREW_VERSION=0.97
# PERL_DL_NONLAZY=1
# PERL_MM_USE_DEFAULT=1
# PERL_USE_UNSAFE_INC=1
# SHELL=/bin/bash
# 
# 
# 
# PERL5LIB path
# /Users/tavery/.cpan/build/Alien-Libxml2-0.19-7/blib/lib
# /Users/tavery/.cpan/build/Alien-Libxml2-0.19-7/blib/arch
# 
# 
# 
# perl                                     5.038000 darwin darwin-2level
# Alien::Base                              2.80
# Alien::Build                             2.80
# Alien::Build::MM                         2.80
# Alien::Build::Plugin::Build::SearchDep   2.80
# Alien::Build::Plugin::Download::GitLab   0.01
# Alien::Build::Plugin::Prefer::BadVersion 2.80
# Alien::Build::Plugin::Probe::Vcpkg       2.80
# ExtUtils::CBuilder                       0.280238
# ExtUtils::MakeMaker                      7.70
# Test2::V0                                0.000155
# Test::Alien                              2.80
# 
# 
# 
# version        = 2.9.14
# cflags         = -I/opt/anaconda3/include/libxml2 -I/opt/anaconda3/include
# cflags_static  = -I/opt/anaconda3/include/libxml2 -I/opt/anaconda3/include
# libs           = -L/opt/anaconda3/lib -lxml2 -L/opt/anaconda3/lib -lz -L/opt/anaconda3/lib -llzma -lpthread -L/opt/anaconda3/lib -liconv -L/opt/anaconda3/lib -licui18n -licuuc -licudata -lm
# libs_static    = -L/opt/anaconda3/lib -lxml2 -L/opt/anaconda3/lib -lz -L/opt/anaconda3/lib -llzma -lpthread -L/opt/anaconda3/lib -liconv -L/opt/anaconda3/lib -licui18n -licuuc -licudata -lm
# 
# 
# 
t/00_diag.t ........ ok   
t/alien_libxml2.t .. 2/? 
# Failed test 'xs'
# at t/alien_libxml2.t line 27.
#   XSLoader failed
#     Can't load '/Users/tavery/.cpan/build/Alien-Libxml2-0.19-7/_alien/tmp/test-alien-o4UohP/auto/Libxml2/Libxml2.bundle' for module Libxml2: dlopen(/Users/tavery/.cpan/build/Alien-Libxml2-0.19-7/_alien/tmp/test-alien-o4UohP/auto/Libxml2/Libxml2.bundle, 0x0002): symbol not found in flat namespace '_xmlCleanupParser' at /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0/darwin-2level/DynaLoader.pm line 210.
#  at /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/Test/Alien.pm line 483.
# Compilation failed in require at /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/Test/Alien.pm line 483.
# BEGIN failed--compilation aborted at /Users/tavery/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/Test/Alien.pm line 483.
t/alien_libxml2.t .. Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/3 subtests 

Test Summary Report
-------------------
t/alien_libxml2.t (Wstat: 256 (exited 1) Tests: 3 Failed: 1)
  Failed test:  2
  Non-zero exit status: 1
Files=2, Tests=4,  1 wallclock secs ( 0.01 usr  0.01 sys +  0.34 cusr  0.14 csys =  0.50 CPU)
Result: FAIL
Failed 1/2 test programs. 1/4 subtests failed.
make: *** [test_dynamic] Error 1
  PLICEASE/Alien-Libxml2-0.19.tar.gz
  /usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
  reports PLICEASE/Alien-Libxml2-0.19.tar.gz

------------It looks like it's picking up the right make file from perl brew and the right place where the module is installed, so I'm really confused about why the tests are failing, or at least some of them. The one thing is that it looks like it's using the 2-0.19 version of Alien-Libxml, instead of the dev version, which was 2.9.14. maybe this has to do with the Apple installed version of perl?
------------I tried installing CPAN::DistnameInfo and rerunning, as suggested. But it still didn't work.

@plicease
Copy link
Member

I am not familiar with Anaconda but another user was able to work through this by using the MacPorts version of libxml2 instead. CI for this module uses MacBrew, so I believe that should work too.

See #36

Another option is to force a share install by setting ALIEN_INSTALL_TYPE=share environment variable when you are installing Alien::Libxml2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants