Thank you very much for your reply below. I was getting desperate of getting 
any at all.
I will check the permissions issue and post back to the list.

Maybe in the mneantime an additional question to the list : has *anyone at all* succeeded in installing (and using) Apache 2.4 / perl 5.20+ / mod_perl 2.x on a Windows 10 platform ? Knowing that someone else has been able to do that, would already help me in focusing my debugging efforts to something specific to my laptop.


On 31.01.2020 16:45, Bruce Johnson wrote:
I am not a Windows expert by any means, but it it possible that it’s a permissions issue on that DLL file or enclosing directory(s)?  Folder permissions in Windows will let you grant directory listing rights but not read rights for the process that’s doing the compilation…

See: https://www.online-tech-tips.com/computer-tips/set-file-folder-permissions-windows/ under Permission Types; the specific right is ‘List Folder Contents’

This would account for both dl_findfile working and the ‘Can’t Load file’ error because the first utilizes the listing rights and the second needs to actually read the file.



On Jan 16, 2020, at 1:34 AM, André Warnier (tomcat/perl) <a...@ice-sa.com <mailto:a...@ice-sa.com>> wrote:

Can anyone tell me what the error below really means ?
(and if possible, give me a clue as to what may be happening ?)

To get possibly more details, I re-ran the compile command after setting PERL_DL_DEBUG in the environment (just something I found in Dynaloader.pm). It does give some more detail, but I am still stumped..

Full config described below.
D:\develop\06_SVN\AP2lib\trunk\modlib\AUTH\UMA2.pm is my module, which compiles just fine on Linux servers with similar software installed (Apache, mod_perl, perl).


C:\>perl -cw D:\develop\06_SVN\AP2lib\trunk\modlib\AUTH\UMA2.pm
DynaLoader.pm loaded (C:/Strawberry/perl/site/lib C:/Strawberry/perl/vendor/lib C:/Strawberry/perl/lib, C:\STRAWB~1\c\lib C:\STRAWB~1\c\x86_64-w64-mingw32\lib C:\STRAWB~1\c\lib\gcc\x86_64-w64-mingw32\7.1.0)
DynaLoader::bootstrap for ModPerl::Const (auto/ModPerl/Const/Const.xs.dll)
dl_findfile(-LC:/Strawberry/perl/site/lib/auto/ModPerl/Const -LC:/Strawberry/perl/site/lib -LC:/Strawberry/perl/vendor/lib -LC:/Strawberry/perl/lib Const)
checking in C:/Strawberry/perl/site/lib/auto/ModPerl/Const for Const.xs.dll
checking in C:/Strawberry/perl/site/lib/auto/ModPerl/Const for Const.dll
dl_findfile found: C:/Strawberry/perl/site/lib/auto/ModPerl/Const/Const.dll
Can't load 'C:/Strawberry/perl/site/lib/auto/ModPerl/Const/Const.dll' for module ModPerl::Const: load_file:Das angegebene Modul wurde nicht gefunden at C:/Strawberry/perl/lib/DynaLoader.pm line 193.
 at C:/Strawberry/perl/site/lib/Apache2/Const.pm line 19.
Compilation failed in require at C:/Strawberry/perl/site/lib/Apache2/Const.pm 
line 19.
BEGIN failed--compilation aborted at 
C:/Strawberry/perl/site/lib/Apache2/Const.pm line 19.
Compilation failed in require at 
D:\develop\06_SVN\AP2lib\trunk\modlib\AUTH\UMA2.pm line 28.
BEGIN failed--compilation aborted at D:\develop\06_SVN\AP2lib\trunk\modlib\AUTH\UMA2.pm line 28.

---------------------

OS : Windows 10
Apache httpd 2.4.41
perl (Strawberry) : perl 5, version 26, subversion 2 (v5.26.2) built for MSWin32-x64-multi-thread
mod_perl : from Steve Hay's mod_perl-2.0.10-strawberryperl-5.26.1.1-64bit.zip,
as per Apache log :
Apache/2.4.41 (Win64) mod_perl/2.0.10 Perl/v5.26.2 configured

Problem :

C:\>perl -cw D:\develop\06_SVN\AP2lib\trunk\modlib\AUTH\UMA2.pm
Can't load 'C:/Strawberry/perl/site/lib/auto/ModPerl/Const/Const.dll' for module ModPerl::Const: load_file:Das angegebene Modul wurde nicht gefunden at C:/Strawberry/perl/lib/DynaLoader.pm line 193.
 at C:/Strawberry/perl/site/lib/Apache2/Const.pm line 19.
Compilation failed in require at C:/Strawberry/perl/site/lib/Apache2/Const.pm 
line 19.
BEGIN failed--compilation aborted at 
C:/Strawberry/perl/site/lib/Apache2/Const.pm line 19.
Compilation failed in require at 
D:\develop\06_SVN\AP2lib\trunk\modlib\AUTH\UMA2.pm line 28.
BEGIN failed--compilation aborted at D:\develop\06_SVN\AP2lib\trunk\modlib\AUTH\UMA2.pm line 28.

Line 28 of UMA2.pm is :

use Apache2::Const -compile => qw(:common :http :methods :override :proxy :log REDIRECT AUTHZ_GRANTED AUTHZ_DENIED AUTHZ_DENIED_NO_USER AUTHZ_GENERAL_ERROR);

(wrapping due to email)

C:/Strawberry/perl/site/lib/Apache2/Const.pm line 19 is :

use ModPerl::Const ();

File C:\strawberry\perl\site\lib\ModPerl\Const.pm exists, but has no 
"load_file" in it.

The file C:/Strawberry/perl/site/lib/auto/ModPerl/Const/Const.dll exists.

For non-german-speakers, the above message "load_file:Das angegebene Modul wurde nicht gefunden" translates as "load_file:the specified module was not found".

The above module "UMA2.pm" compiles without error on a Linux server with similar httpd, perl and mod_perl versions.

Any clue or additional questions welcome.
Thanks

--
Bruce Johnson
University of Arizona
College of Pharmacy
Information Technology Group

Institutions do not have opinions, merely customs


Reply via email to