http://qs1969.pair.com?node_id=1205657


in reply to Re: Using PerlApp or PAR with modules with data dependenciess
in thread Using PerlApp or PAR with modules with data dependenciess

Thank you for your suggestion. Without adding:

use Lingua;

the exe made by PerlApp (standard settings) produces at runtime following error message related to the line of code I pointed to in the OP:

Failed to find share dir for dist 'Lingua-Sentence' at /<C:\Users\XY\s +plitter.exe>Lingua/Sentence.pm line 24.

If I add:

use Lingua;

PerlApp is not capable of compile the script. Following error message:

PerlApp is not able to locate Lingua.pm using the current module searc +h path. This module is probably required. If this module is require +d then adjust the module search path on the Main tab so that it can b +e found. Otherwise consider trimming the module in order to hide thi +s error.

a quick check confirms that there is no Language.pm module in Perl/site/lib/(Language)

Replies are listed 'Best First'.
Re^3: Using PerlApp or PAR with modules with data dependenciess
by Marshall (Canon) on Dec 16, 2017 at 09:55 UTC
    Well, did you use the ActiveState ppm (Perl Package Manager) application to install these modules? I suspect that you don't have a valid ActiveState Perl installation.

    I looked with ppm on my current installation. I think you need to install Lingua-EN-Sentence using ppm. The ActiveState tools do work, but you have to "play by their rules".

      Hello. Yes, everything has been installed imo the right way. Module Lingua::Sentence has been installed with ActiveState ppm (and it works fine if I run my script). PS: I am not using Lingua::EN::Sentence (this module - relying on no external files can be paked without problems by PerlApp!). PerlApps works for me too, but the exeption is - as I said - when a module relies on external files (in the case of Lingua::Sentence these files are non breaking rules the module needs to perform its task).

        I did a google on "activestate Lingua::sentence" and understand incrementally a bit more. On the ActiveState user forum there was a similar question but the OP wasn't able to present a clear example of his issue. Your example is a great clear one. I'd give ActiveState a chance to recommend their solution/work-a-round. Something is wrong in the module, but I don't know what. Presumably you'd want all of these language specific files to be included in the .exe so that you could calculate a table to use at run-time? In the mean time, I'd do what you have to do in order to force this EN file into the .exe as a short term measure.