First, although strawberry is in the software center and allowed to be installed, cpan is not working due to corporate policy Second, regarding INC @inc:
C:/ProgramData/AppV/69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC/F2241D52-0D98 +-449E-B93D-6ABC6A7CB779/Root/perl/site/lib C:/ProgramData/AppV/69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC/F2241D52-0D98 +-449E-B93D-6ABC6A7CB779/Root/perl/vendor/lib C:/ProgramData/AppV/69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC/F2241D52-0D98 +-449E-B93D-6ABC6A7CB779/Root/perl/lib
Third, when running Makefile.PL I get the message
Have \progra3\appv\69bae71\f2241d~1\root\perl\lib Want \strprl40.501\perl\lib Your perl and your Config.pm seem to have different ideas about the architecture they are running on. Perl thinks: [lib] Config says: [MSWin32-x64-multi-thread] This may or may not cause problems. Please check your installation of +perl if you have problems building this extension. Generating a gmake-style Makefile

Nevertheless, for many modules this is not an issue and the module installs and is usable fine.

Fourth, for many (not just Win32 OLE as here) I get a weird install error:

gmake install
"C:\ProgramData\AppV\69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC\F2241D52-0D9 +8-449E-B93D-6ABC6A7CB779\root\perl\bin\perl.exe" -MExtUtils::Command: +:MM -e cp_nonempty -- OLE.bs blib\arch\auto\Win32\OLE\OLE.bs 644 Files found in blib\arch: installing files in blib\lib into architectu +re dependent library tree Installing C:\Strprl40.501\perl\site\lib\auto\Win32\OLE\OLE.xs.dll !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!! ERROR: Cannot copy 'blib\arch\auto\Win32\OLE\OLE.xs.dll' to 'C:\Strprl +40.501\perl\site\lib\auto\Win32\OLE\OLE.xs.dll': No such file or dire +ctory !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!! at -e line 1. gmake: *** [makefile:737: pure_site_install] Error 2

Now I do not understand why the copy fails

 dir blib\arch\auto\Win32\OLE

results in:

Volume in drive C has no label. Volume Serial Number is F2DC-59D5 Directory of c:\Users\alexspy\FAILEDINSTALL\Win32-OLE-0.1713\blib\arch +\auto\Win32\OLE 06/06/2025 16:32 . 06/06/2025 16:31 .. 06/06/2025 16:31 0 .exists 06/06/2025 16:32 110,592 OLE.xs.dll 2 File(s) 110,592 bytes 2 Dir(s) 164,110,532,608 bytes free

So the dll is there. Maybe the target directory is the problem?

dir C:\Strprl40.501\perl\site\lib\auto\Win32\OLE Volume in drive C has no label. Volume Serial Number is F2DC-59D5 Directory of C:\Strprl40.501\perl\site\lib\auto\Win32\OLE 06/06/2025 16:33 . 06/06/2025 16:33 .. 0 File(s) 0 bytes 2 Dir(s) 164,110,528,512 bytes free

No, looks fine What if I manually copy the dll?

c:\Users\alexspy\FAILEDINSTALL\Win32-OLE-0.1713>copy c:\Users\alexspy\ +FAILEDINSTALL\Win32-OLE-0.1713\blib\arch\auto\Win32\OLE\OLE.xs.dll C: +\Strprl40.501\perl\site\lib\auto\Win32\OLE The system cannot find the path specified. 0 file(s) copied.

Does this make sense?? For completeness, here are the steps before the gmake that fails

Win32-OLE-0.1713>perl Makefile.PL Have \progra3\appv\69bae71\f2241d~1\root\perl\lib Want \strprl40.501\perl\lib Your perl and your Config.pm seem to have different ideas about the architecture they are running on. Perl thinks: [lib] Config says: [MSWin32-x64-multi-thread] This may or may not cause problems. Please check your installation of +perl if you have problems building this extension. Generating a gmake-style Makefile Writing Makefile for Win32::OLE Writing MYMETA.yml and MYMETA.json
.... \Win32-OLE-0.1713>gmake Skip blib\lib\Win32\OLE\TPJ.pod (unchanged) Skip blib\lib\Win32\OLE\TypeInfo.pm (unchanged) Skip blib\lib\Win32\OLE\Const.pm (unchanged) Skip blib\lib\Win32\OLE\NEWS.pod (unchanged) Skip blib\lib\Win32\OLE\Lite.pm (unchanged) Skip blib\lib\OLE.pm (unchanged) Skip blib\lib\Win32\OLE\Variant.pm (unchanged) Skip blib\lib\Win32\OLE.pm (unchanged) Skip blib\lib\Win32\OLE\NLS.pm (unchanged) Skip blib\lib\Win32\OLE\Enum.pm (unchanged) Running Mkbootstrap for OLE () "C:\ProgramData\AppV\69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC\F2241D52-0D9 +8-449E-B93D-6ABC6A7CB779\root\perl\bin\perl.exe" -MExtUtils::Command -e chmod -- 644 "OLE.bs" "C:\ProgramData\AppV\69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC\F2241D52-0D9 +8-449E-B93D-6ABC6A7CB779\root\perl\bin\perl.exe" -MExtUtils::Command::MM -e cp_nonempty -- OLE.bs blib\arch\auto\Win32\OLE\OLE.bs 644 gcc -c -std=c99 -DWIN32 -DWIN64 -DPERL_TEXTMODE_SCRIPTS -DMULTIPLICITY -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D__USE_MINGW_ANSI_STDIO -fwrapv -fno-strict-aliasing -mms-bitfields -Os -falign-functions -falign-jump +s -falign-labels -falign-loops -freorder-blocks -freorder-blocks-algorithm=stc -freorder-blocks-and-partition -DVERSION="0.1713" -DXS_VERSION="0.1713" "-IC:\Strprl40.501\perl\lib\CORE" OLE.cpp cc1plus.exe: warning: command-line option '-std=c99' is valid for C/Ob +jC but not for C++ g++ OLE.def -o blib\arch\auto\Win32\OLE\OLE.xs.dll -shared -s -L"C:\Strprl40.501\perl\lib\CORE" -L"C:\Strprl40.501\c\lib" -L"C:\Strprl40.501\c\x86_64-w64-mingw32\lib" -L"C:\Strprl40.501\c\lib\gcc\x86_64-w64-mingw32\13.2.0" OLE.o "C:\Strprl40.501\perl\lib\CORE\libperl540.a" -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 -Wl,--enable-auto-image-base "C:\ProgramData\AppV\69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC\F2241D52-0D9 +8-449E-B93D-6ABC6A7CB779\root\perl\bin\perl.exe" -MExtUtils::Command -e chmod -- 755 blib\arch\auto\Win32\OLE\OLE.xs.dl +l

and

\Win32-OLE-0.1713>gmake test "C:\ProgramData\AppV\69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC\F2241D52-0D9 +8-449E-B93D-6ABC6A7CB779\root\perl\bin\perl.exe" -MExtUtils::Command: +:MM -e cp_nonempty -- OLE.bs blib\arch\auto\Win32\OLE\OLE.bs 644 "C:\ProgramData\AppV\69BAE760-7169-4C2A-B9C9-F1E18DDC5EAC\F2241D52-0D9 +8-449E-B93D-6ABC6A7CB779\root\perl\bin\perl.exe" "-MExtUtils::Command +::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_ha +rness(0, 'blib\lib', 'blib\arch')" t/*.t t/1_nls.t ....... ok t/2_variant.t ... ok t/3_ole.t ....... 43/58 Win32::OLE(0.1713) error 0x80080005: "Server e +xecution failed" at t/3_ole.t line 521. eval {...} called at t/3_ole.t line 521 Win32::OLE->QueryObjectType: object is not a Win32::OLE object at t/3_ +ole.t line 522. t/3_ole.t ....... Failed 1/58 subtests (less 2 skipped subtests: 55 okay) t/4_compat.t .... ok t/5_unicode.t ... skipped: Unicode::String module not installed t/6_event.t ..... ok t/7_overload.t .. ok Test Summary Report ------------------- t/3_ole.t (Wstat: 0 Tests: 58 Failed: 1) Failed test: 48 Files=7, Tests=112, 203 wallclock secs ( 0.03 usr + 0.30 sys = 0.33 +CPU) Result: FAIL Failed 1/7 test programs. 1/112 subtests failed. gmake: *** [makefile:971: test_dynamic] Error 255

Last, Tk is another modules that has an issue and gives errors. I see there is a patch, but I think this only works via cpan. Do we have a Tk modules that can be built via Makefile/gmake?


In reply to Strawberry perl issue with module installation (non-CPAN) by spiral

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.