Opened 2 years ago

Closed 16 months ago

#63636 closed defect (fixed)

new version of auto-multiple-choice-devel fails to run

Reported by: jmgoicolea (Jose Goicolea) Owned by: nortcele
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: jose.goicolea@…, jmgoicolea (Jose Goicolea), mascguy (Christopher Nielsen)
Port: auto-multiple-choice-devel

Description

The new version of auto-multiple-choice-devel (version 1.5.0-3-g3f13eaba_0) fails to run for me, I get the following message:

$ auto-multiple-choice 
dbus[93642]: Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
Can't locate AMC/Basic.pm in @INC (you may need to install the AMC::Basic module) (@INC contains: /opt/local/lib/perl5/site_perl/5.28/darwin-thread-multi-2level /opt/local/lib/perl5/site_perl/5.28 /opt/local/lib/perl5/vendor_perl/5.28/darwin-thread-multi-2level /opt/local/lib/perl5/vendor_perl/5.28 /opt/local/lib/perl5/5.28/darwin-thread-multi-2level /opt/local/lib/perl5/5.28) at /opt/local/lib/AMC/perl/AMC-gui.pl line 36.
BEGIN failed--compilation aborted at /opt/local/lib/AMC/perl/AMC-gui.pl line 36.

Apparently it cannot find Basic.pm, but It does exist in my sistem within the INC path:

$ locate Basic.pm
/System/Library/Perl/Extras/5.18/LWP/Authen/Basic.pm
/System/Library/Perl/Extras/5.18/MooseX/Getopt/Basic.pm
/System/Library/Perl/Extras/5.18/MooseX/Storage/Basic.pm
/System/Library/Perl/Extras/5.30/LWP/Authen/Basic.pm
/System/Library/Perl/Extras/5.30/MooseX/Getopt/Basic.pm
/System/Library/Perl/Extras/5.30/MooseX/Storage/Basic.pm
/System/Library/Perl/Extras/5.30/Test2/Tools/Basic.pm
/opt/local/lib/perl5/vendor_perl/5.28/AMC/Basic.pm
/opt/local/lib/perl5/vendor_perl/5.28/LWP/Authen/Basic.pm
/opt/local/lib/perl5/vendor_perl/5.30/LWP/Authen/Basic.pm

I am running macOS 11.6 and xcode 13.0 with CLT installed.

A previous version (auto-multiple-choice-devel 1.5.0_rc2-4-g4357dcbf_2) does run OK in my system.

Any ideas of what may be wrong? Many thanks!

Change History (11)

comment:1 Changed 2 years ago by jmgoicolea (Jose Goicolea)

Cc: jmgoicolea added

comment:2 Changed 2 years ago by jmgoicolea (Jose Goicolea)

Port: auto-multiple-choice-devel added

comment:3 Changed 2 years ago by jmroot (Joshua Root)

Owner: set to nortcele
Status: newassigned

comment:4 Changed 2 years ago by jmgoicolea (Jose Goicolea)

I just realised my previous info was inaccurate (I was looking in the locate database but it was not updated).

With the new version of AMC 1.5.0-3-g3f13eaba_0 the perl modules 5.28/AMC do not exist, they are replaced by 5.30/AMC:

$ ll /opt/local/lib/perl5/vendor_perl/5.28/AMC/Basic.pm /opt/local/lib/perl5/vendor_perl/5.30/AMC/Basic.pm 
ls: /opt/local/lib/perl5/vendor_perl/5.28/AMC/Basic.pm: No such file or directory
-rw-r--r--  1 root  wheel    27K 16 oct 20:10 /opt/local/lib/perl5/vendor_perl/5.30/AMC/Basic.pm

However, AMC in my system AMC in the INC path apparently looks only in 5.28. Can the problem be solved by updating this version in the code of AMC?

Thanks for your attention

comment:5 Changed 2 years ago by jmgoicolea (Jose Goicolea)

I have found a workaround, by setting manually perl 5.30 version instead of 5.28:

cd /opt/local/bin; sudo ln -sf perl5.30 perl

comment:6 Changed 2 years ago by nortcele

The problem comes from a malfunction of MacPorts. Usually I only change the Perl version of AMC when the default version of MacPorts changes.

The Perl version of AMC has been changed from Perl5.28 to Perl5.30 while the default Perl version has remained at 5.28. So when running the AMC installation some of the Perl modules are installed in the Perl5.28 hierarchy and some in the Perl5.30 hierarchy. Look at the perl modules installed for a failed AMC installation in https://github.com/macports/macports-ports/runs/3876718372?check_suite_focus=true (Build changed subports).

One way around this problem is to install Perl5.30 first as the default version with the command "sudo port install perl5 +perl5_30". And then continue with the AMC installation. This way all the Perl modules are installed in the right place and AMC works correctly. See installation instructions at https://project.auto-multiple-choice.net/projects/auto-multiple-choice/wiki/Installing_AMC_with_MacPorts_on_macOS.

I may revert perl version of AMC to 5.28 in the next update of the AMC ports. I have to make some tests before.

comment:7 Changed 2 years ago by jmgoicolea (Jose Goicolea)

Many thanks, the workaround you suggest for setting perl5-30 as default seems to work fine!

Regards

comment:8 Changed 2 years ago by mascguy (Christopher Nielsen)

Cc: mascguy added

comment:9 Changed 17 months ago by nortcele

Ticket could be closed.

comment:10 Changed 17 months ago by jmgoicolea (Jose Goicolea)

Yes, thanks!

comment:11 in reply to:  7 Changed 16 months ago by mascguy (Christopher Nielsen)

Resolution: fixed
Status: assignedclosed

Replying to jmgoicolea:

Many thanks, the workaround you suggest for setting perl5-30 as default seems to work fine!

Great, closing as fixed.

Note: See TracTickets for help on using tickets.