spiral has asked for the wisdom of the Perl Monks concerning the following question:
Third, when running Makefile.PL I get the messageC:/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
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\OLEresults 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?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Strawberry perl issue with module installation (non-CPAN)
by syphilis (Archbishop) on Jun 09, 2025 at 12:20 UTC |