Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

dmake error on portable Strawberry

by aplonis (Pilgrim)
on Sep 15, 2018 at 12:45 UTC ( [id://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 (Priest) 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 (Chancellor) 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 (Archbishop) 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
Domain Nodelet?
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?Last hourOther CB clients
Other Users?
Others studying the Monastery: (5)
As of 2024-04-19 00:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found