Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

dmake error on portable Strawberry

by aplonis (Pilgrim)
on Sep 15, 2018 at 12:45 UTC ( #1222424=perlquestion: print w/replies, xml ) Need Help??

aplonis has asked for the wisdom of the Perl Monks concerning the following question:

So I'm trying to rebuild pp in Strawberry on my flash drive per this link.

But I'm trying to do it on a plug-in flash drive (G:) on a Win10 laptop which also has Perl in drive C:.

I get this result...

G:\Strawberry\cpan\build\PAR-Packer-1.047-0>dmake Makefile dmake: Error: -- Configuration file `C:\Strawberry\c\bin\startup\star +tup.mk' not found G:\Strawberry\cpan\build\PAR-Packer-1.047-0>

So next I try it instead like so and get...

G:\Strawberry\cpan\build\PAR-Packer-1.047-0>G:/Strawberry/c/bin/dmake +G:/Strawberry/cpan/build/PAR-Packer-1.047-0/Makefile dmake: makefile: line 1106: Warning: -- Empty recipe for special or + meta target .NOTPARALLEL G:\Strawberry\cpan\build\PAR-Packer-1.047-0> <p>The reason I'm needing to build PAR-Packer versus install it is so +as to have my own icon put into every exe it creates (as detailed in +the link). It had worked before, but then I was installing into regul +ar Strawberry on the C: drive, whereas now I'm trying to do the same +on a flash drive instead. Before I had been doing on Win7 and this is + now Win10.</p>

So next I try it on the C: drive like regular and get this...

C:\Strawberry\cpan\build\PAR-Packer-1.047-0>perl MakeFile.PL Checking if your kit is complete... Looks good Subroutine MY::postamble redefined at ./Makefile.PL line 225. # using "objdump" recursively to find DLLs needed by par.exe Generating a gmake-style Makefile Writing Makefile for PAR::Packer Writing MYMETA.yml and MYMETA.json C:\Strawberry\cpan\build\PAR-Packer-1.047-0>dmake Makefile dmake: Error: -- Configuration file `C:\Strawberry\c\bin\startup\star +tup.mk' not found C:\Strawberry\cpan\build\PAR-Packer-1.047-0>

And that doesn't work either. Hmmm. A clue I would seem to be lacking.

Replies are listed 'Best First'.
Re: dmake error on portable Strawberry
by Haarg (Deacon) on Sep 15, 2018 at 20:53 UTC

    The output in your last attempt shows what the problem is. The Makefile being generated is meant to be used with gmake, not dmake. This is a change made in Strawberry Perl 5.26.

Re: dmake error on portable Strawberry
by afoken (Canon) on Sep 15, 2018 at 21:10 UTC

    Re: dmake error on portable Strawberry asks the right question: Which dmake are you running? Check with this one-liner:

    C:\Users\alex>perl -E "say for grep -x,map qq[$_\\dmake.exe],split/;/, +$ENV{PATH}" C:\strawberry\c\bin\dmake.exe C:\Users\alex>

    The first line contains the dmake that will run. If you want to run dmake from your flash stick (G:), then you should not see dmake in C:\strawberry as first entry. From the dmake error message, it looks like you invoked the dmake in C:\strawberry.

    To use portable strawberry, you have to modify the environment. This is done by running portableshell.bat. See also the file README.txt in the top-level directory of the Strawberry-portable zip file. Relevant part:

    How to use Strawberry Perl Portable?

    1. Extract strawberry portable ZIP into e.g. c:\myperl\
      Note: choose a directory name without spaces and non us-ascii characters
    2. Launch c:\myperl\portableshell.bat - it should open a command prompt window
    3. In the command prompt window you can:
      • run any perl script by launching
        c:\> perl c:\path\to\script.pl
      • install additional perl modules (libraries) from http://www.cpan.org/ by
        c:\> cpan Module::Name
      • run other tools included in strawberry like: perldoc, gcc, gmake ...
    4. If you want to use Strawberry Perl Portable not only from portableshell.bat, add c:\myperl\perl\site\bin, c:\myperl\perl\bin, and c:\myperl\c\bin to PATH variable

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)

      An even shorter one-liner is:

      where dmake

      which on my Win10 system currently gives

      C:\berrybrew\5.28.0_64_PDL\c\bin\dmake.exe C:\Strawberry\c\bin\dmake.exe

      That does not change the fact that the root cause of the issue is that Strawberry perl uses gmake by default, as Haarg notes in 1222452.

Re: dmake error on portable Strawberry
by syphilis (Bishop) on Sep 15, 2018 at 14:19 UTC
    Configuration file `C:\Strawberry\c\bin\startup\startup.mk' not found

    dmake won't work if startup.mk cannot be found.
    Does C:\Strawberry\c\bin\startup\startup.mk exist ? If not, what happened to it ?
    Best if you could provide the output of perl -V

    Cheers,
    Rob
Re: dmake error on portable Strawberry
by Anonymous Monk on Sep 15, 2018 at 20:19 UTC

    Do you have perl on flash drive?

    Did you run portableshell.bat?

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1222424]
Approved by Athanasius
Front-paged by Corion
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (4)
As of 2019-07-18 19:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?