Intrepid has asked for the wisdom of the Perl Monks concerning the following question:
Under StrawberryPerl I'm having some difficulty building Win32::Exe and I'd like to get opinions from those more familiar with XS-using modules than I am.
Here's what the distribution package contains, in tree format, after I did a 'make clean'.
Win32-Exe-0.17-0/ |--Changes |--MANIFEST |--META.yml |--Makefile.PL |--Makefile.old |--README |--insert | |--InsertResourceSection.xs | |--Makefile.PL | |--Makefile.old | |--t | | |--0-load.t | | `--1-basic.t | `--typemap |--lib | `--Win32 | |--Exe | | |--Base.pm | | |--DataDirectory.pm | | |--DebugDirectory.pm | | |--DebugTable.pm | | |--IconFile.pm | | |--InsertResourceSection.pm | | |--Manifest | | | `--Parser.pm | | |--Manifest.pm | | |--PE | | | |--Header | | | | |--PE32.pm | | | | `--PE32Plus.pm | | | `--Header.pm | | |--PE.pm | | |--Resource | | | |--GroupIcon.pm | | | |--Icon.pm | | | |--Manifest.pm | | | `--Version.pm | | |--Resource.pm | | |--ResourceData.pm | | |--ResourceEntry | | | |--Id.pm | | | `--Name.pm | | |--ResourceEntry.pm | | |--ResourceTable.pm | | |--Section | | | |--Code.pm | | | |--Data.pm | | | |--Debug.pm | | | |--Exports.pm | | | |--Imports.pm | | | `--Resources.pm | | `--Section.pm | `--Exe.pm |--script | `--exe_update.pl `--t |--0-pod.t |--1-basic.t |--2-icon.t |--3-manifest.t |--4-execupdate.t |--application.xml |--empty.xml |--hd.ico |--par.ico |--winexe32.exe `--winexe64.exe
The error in the make step is this:
gcc -c -std=c99 -DWIN32 -DWIN64 -DPERL_TEXTMODE_SCRIPTS -DMULTIPLICITY + -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D__USE_MINGW_ANSI_STDIO -fwrapv -f +no-strict-aliasing -mms-bit fields -O2 -DVERSION=\"0.17\" -DXS_VERSIO +N=\"0.17\" "-ID:\SBP\perl\lib\CORE" InsertResourceSection.c gcc: fatal error: no input files compilation terminated.
I'm trying not to post too much from the screen so I'll just show this context for the error:
Running Mkbootstrap for InsertResourceSection () "D:\SBP\perl\bin\perl.exe" -MExtUtils::Command -e chmod -- 644 "Insert +ResourceSection.bs" "D:\SBP\perl\bin\perl.exe" -MExtUtils::Command::MM -e cp_nonempty -- I +nsertResourceSection.bs ..\blib\arch\auto\Win32\Exe\InsertResourceSec +tion\InsertResourceSection.bs 644 "D:\SBP\perl\bin\perl.exe" "D:\SBP\perl\lib\ExtUtils/xsubpp" -typemap + D:\SBP\perl\lib\ExtUtils\typemap -typemap C:\Users\somia\build\straw +berry-perl\Win32-Exe-0.17-0\insert\typemap InsertResourceSection.xs > + InsertResourceSection.xsc "D:\SBP\perl\bin\perl.exe" -MExtUtils::Command -e mv -- InsertResource +Section.xsc InsertResourceSection.c
So the obvious thing to do is to look at the file tree for InsertResourceSection.c and it's at Win32-Exe-0.17-0/insert/InsertResourceSection.c. That's why I say there's "Funny business." ;-(
Jun 04, 2025 at 21:09 UTC
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Funny-business with Win32 extension module build
by pryrt (Abbot) on Jun 04, 2025 at 21:31 UTC | |
by Intrepid (Curate) on Jun 05, 2025 at 00:57 UTC |