Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: GD and PAR/CAVA packager (depends.exe)

by Anonymous Monk
on Sep 13, 2013 at 10:38 UTC ( #1053884=note: print w/replies, xml ) Need Help??


in reply to GD and PAR/CAVA packager

Maybe you need to list extra dlls like described in Re^3: Problem in creating exe using PAR module, Re^5: Problem installing Apache Lucy,

After you build an exe with pp -x ... try it out locally by first using set path= then  myexe.exe

Re: Embedding extra DLLs into .exe *and finding* them again, http://live.sysinternals.com/Listdlls.exe, Re^2: Packaging Perl Programs (is) Painful, Re^2: Packaging Perl Programs (is) Painful, Re^2: Packaging Perl Programs (is) Painful, Re^2: Packaging Perl Programs (is) Painful, Re^2: Packaging Perl Programs (is) Painful,

Or even try using depends.exe like this   depends.exe /c /f:1 /pb /ot:temp.txt ...perl.exe foo.pl ... to see if the program really ran the first time

Replies are listed 'Best First'.
Re^2: GD and PAR/CAVA packager (depends.exe)
by AndreaN (Novice) on Sep 13, 2013 at 11:05 UTC

    Unfortunately I'm not really competent with managing DLLs or dealing with these things, as I'm not a computer scientist. Anyway, when I run Dependency Walker on GD.dll I get a list of about 30 or more other DLLs. For two of them, actually, IESHIMS.DLL and WER.DLL, I get the warning "Error opening file. The system cannot find the file specified". So, if I understood correctly, I would have to add all of these 30 or so DLLs manually in the PP command line?

    Thank you

      You shouldn't have to manually add the dlls. pp uses Module::ScanDeps under the hood, and it'll take care of the dependencies for you. You will probably need to manually add GD to the command like this:
      /usr/bin/pp --gui -n -c -M GD -B -o out.exe script.pl
      See the documentation for the options. Give it a try and Good Luck!

        You shouldn't have to manually add the dlls.

        Blah blah blah

      So, if I understood correctly, I would have to add all of these 30 or so DLLs manually in the PP command line?

      No, not all 30, you're probably only missing libbgd.dll , should be located somewhere near where you installed perl or cygwin or mingw

      In general, you don't add the .dll's that come with the operating system , stuff under %WINDIR%, %windir%\system32, like kernel32.dll user32.dll gdi32.dll comdlg32.dll advapi32.dll shell32.dll mciole32.dll ole32.dll oleaut32.dll netapi32.dll ws2_32.dll cmprops.dll mpr.dll mprapi.dll mprddm.dll mprdim.dll mprmsg.dll mprui.dll winmm.dll version.dll odbc32.dll odbc32gt.dll odbccp32.dll comctl32.dll

      $ perl -V:libs libs=' -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -l +advapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmp +r -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32 ';

      kernel32.... they all come from microsoft with windows

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1053884]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (4)
As of 2017-12-11 14:13 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    What programming language do you hate the most?




















    Results (297 votes). Check out past polls.

    Notices?