You need to "play" with $tcl_library tcl variable, 

$::tcl_library = '....some dir....';
if (exists $ENV{PAR_TEMP}) {
    $::tcl_library = "$ENV{PAR_TEMP}\\inc";
}

    $int->SetVar('tcl_library',"$::tcl_library1/lib/tcl8.5");
    $int->Eval($Tcl::init_scripts{'tcl8.5/init.tcl'}); # or you can feed the 
file with "source" tcl command

(I've "slurped" some tcl init scripts into perl hash and eval it from there, 
you can just place these where PAR unpacks and "point" it to the tcl/tk)

Should work, if you place all tcl/tk files as subdir and then PAR-pack it into 
.par archive and "point" tcl_library there

-----Original Message-----
From: Kevin Walzer [mailto:k...@codebykevin.com] 
Sent: Tuesday, September 22, 2015 2:00 PM
To: tcltk@perl.org
Subject: Re: Tcl/Tk in par exe

Following up on this:

I've been able to pack the Tcl and Tk dll's using the "-l" flag with calling 
pp/par. However, it does not know where to unpack the rest of the Tcl 
installation in such a way that the app can find them.

Can't find a usable init.tcl in the following directories:
     C:/Users/kevin/AppData/Local/Temp/par-kevin/lib/tcl8.5 C:/Users/kevin/
AppData/Local/Temp/par-kevin/lib/tcl8.5 C:/Users/kevin/AppData/Local/Temp/li
b/tcl8.5 C:/Users/kevin/AppData/Local/Temp/par-kevin/library
C:/Users/kevin/AppData/Local/Temp/library
C:/Users/kevin/AppData/Local/Temp/tcl8.6.4/library
C:/Users/kevin/AppData/Local/tcl8.6.4/library

I've seen others on this list report that they use a Tcl/Tk installation rather 
than ActiveState's tkkit bits to run Tkx. They've also said they can deploy 
standalone apps with par. Therefore, there should be a way to get the Tcl 
scripts installed correctly. Can anyone give me some insight on how to do 
this--where to set up the par installation, how to initialize it in code? Vadim?

--Kevin

--
Kevin Walzer
Code by Kevin/Mobile Code by Kevin
http://www.codebykevin.com
http://www.wtmobilesoftware.com

Reply via email to