http://www.perlmonks.org?node_id=1008538


in reply to Re^2: how to create a makefile using PAR::Packer
in thread how to create a makefile using PAR::Packer

Thx for the replay

My pleasure.

At pp only to create executable when source has changed you wrote:

As the projects get bigger it takes longer before executables are created, what I would like and not have found yet is that executables are only created when the source (pl) has been changed. So executables are not recreated when no changes to sources have been made.

In my simple example Foo.pm is a source file - and only when it is changed, pp is run.

In the last example you are using Visual Fox pro examples, why is this?

I can't see any Visual Fox Pro example for the moment, sorry. So i can't answer why this is. Please correct my if i'm wrong.

I thought this was a Perl forum and for me it makes it more confusing?

Nothing but the truth, this is a Perl forum - but it doesn't confuse you.

I hope that helps.

Best regards, Karl

Update: P.S.: I'm about loosing my faith...please correct my if i'm wrong.

«The Crux of the Biscuit is the Apostrophe»

  • Comment on Re^3: how to create a makefile using PAR::Packer

Replies are listed 'Best First'.
Re^4: how to create a makefile using PAR::Packer
by gepebril69 (Scribe) on Dec 12, 2012 at 19:10 UTC

    <quote>In my simple example Foo.pm is a source file - and only when it is changed, pp is run.</quote> Thank you for explaining what it is, my questions were 'what is the use?' and 'why do you need them?'

    I found out that .pm files are perl modules, and from what I understand you can compare them with object files in C(++). Is that right? If so, I could speed up things if I first created .pm of my functions file and constant declaration files before compiling the executables, as I call them as require basic_func.plin all .pl files. That is the way I was thought to do.

    The extension .fmt, used in your examples is according to Google the extension for Visual Fox pro file and not .pl like perl

    I'm using PAR:Packer, as this was the way within Perl, I found out on Google to create .exe files in a free way. Maybe I'm wrong on this and I should take another turn in creating .exe files in a faster in more reliable way

      nroff and groff are typesetting systems on Unix systems.

      With the following two commands you can create a printable file and send it to your printer:

      Karls-Mac-mini:~ karl$ groff -mm ch01 > ch01.fmt Karls-Mac-mini:~ karl$ lp ch01.fmt

      Update:...ch01 is formated file...

      The very basic blueprint to include code in your perl program(s) is:

      Update: Foo.pm

      package Foo; use strict; use warnings our $VERSION = '1.00'; use base 'Exporter'; our @EXPORT = qw( foo ); sub foo { return "bar\n"; } 1; # later, in your main program you say: use strict; use warnings use lib q(/path/to/Foo); use Foo; print foo();

      See perlmod

      pp for creating executables is OK (and cool) but keep in mind that this just are self extracting archives - you can unzip them.

      Regards, Karl

      «The Crux of the Biscuit is the Apostrophe»

        Hi Karl

        I will use your examples and maybe it will become clearer to me what you try to explain. And how to use this info in my solutions.

        I've changed the extension of one file from .exe -> .zip and you are 100% right. I'm completely shocked! Besides the advantage of not to create a Perl environment on systems I don't see the benefit of using pp (PAR::Packer). Is there a way to prevent this and use a module that doesn't make retrieving the source code that easy!!! And produce real machine code.