View Ticket
2012-10-08
19:39 Closed ticket [f929fddcfc]: Tclkit generation problems artifact: 9237172c54 user: rkeene
19:35 Fixed ticket [f929fddcfc]. artifact: 8c32a9e9a4 user: rkeene
19:35 Ticket [f929fddcfc]: 1 change artifact: 44ad0dbcfb user: rkeene
2012-09-25
15:42 Ticket [f929fddcfc]: 1 change artifact: ecb4987f11 user: rkeene
15:29 Ticket [f929fddcfc]: 1 change artifact: 3caaa16d99 user: rkeene
15:28 Ticket [f929fddcfc]: 4 changes artifact: 56d7f94957 user: rkeene
07:59 Ticket [f929fddcfc]: 4 changes artifact: 87ac24f250 user: anonymous
07:53 New ticket [f929fddcfc]. artifact: 631f8b616c user: anonymous

Ticket Hash: f929fddcfc1cced456821d15ac44dcd863b4ff85
Title: Tclkit generation problems
Status: Closed Type: Incident
Severity: Important Priority: High
Subsystem: Mk4tcl Resolution: Open
Last Modified: 2012-10-08 19:39:17
Version Found In: 6.1 trunk
Description:
Firstly i'd like to say: Wow, thanks for building KitCreator, it's mega easy to create starkits, even cross compiling them!!

Now my problems so far:
When compiling everything succeeded (after many tries)

./kitcreator 8.6b3
Building tcl ... done.
Building tclvfs ... done.
Building zlib ... done.
Building tk ... done.
Building itcl ... done.
Building mk4tcl ... done.
Building kitsh ... done.

When I try to run it i get this:
./tclkit-local 
application-specific initialization failed: couldn't read file "/home/lostone/Programare/Tcl/freewrap-starkits/kitcreator/tclkit-local/lib/tcl8.6/init.tcl": invalid seek

Even if I run ./tclkit-8.6b3

When I compile it without mk4tcl but use cvfs or zip instead.. It compiles, when I run it, it WORKS if I source any file. But i have a problem.

I can't seem to ever be able to succesfully build a starpack or use sdx.kit:
(I know it uses  vfs:mk4 but wth..?)

an't find package vfs::mkcl
    while executing
"package require vfs::mkcl"
    (procedure "::vfs::mk4::Mount" line 4)
    invoked from within
"::vfs::mk4::Mount /home/lostone/Programare/Tcl/freewrap-starkits/sdx.kit /home/lostone/Programare/Tcl/freewrap-starkits/sdx.kit -readonly"
    ("eval" body line 1)
    invoked from within
"eval [list ::vfs::${driver}::Mount $self $self] $args"

Is there any (other) way I can build "starpacks" of my applications?
Can I just append ZIPS? I'd be glad if anything else works!

Also doing a "package names" only gives a few names.. If I append any .tcl file to the executable and then do "package names" i get all the packages..
95% of them source, some give errors like this:
couldn't read file "/home/lostone/Programare/Tcl/freewrap-starkits/kitcreator/tclkit-8.6b3/lib/vfs/mk4vfs.tcl": no such file or directory

I tried building starkits with kitgen, kbs and even to compile It myself but I failed miserably every time. I think it either must be a 8.6b bug or something in the settings. The weird thing YOUR app was the ONLY one to run the code without coughing anything.. Though no starkit/starpack/zip way to deploy an app.

Thanks in advance and keep up the good work!


anonymous added on 2012-09-25 07:59:00 UTC:

Firstly i'd like to say: Wow, thanks for building KitCreator, it's mega easy to create starkits, even cross compiling them!!

Now my problems so far: When compiling everything succeeded (after many tries)

./kitcreator 8.6b3 Building tcl ... done. Building tclvfs ... done. Building zlib ... done. Building tk ... done. Building itcl ... done. Building mk4tcl ... done. Building kitsh ... done.

When I try to run it i get this: ./tclkit-local application-specific initialization failed: couldn't read file "/home/lostone/Programare/Tcl/freewrap-starkits/kitcreator/tclkit-local/lib/tcl8.6/init.tcl": invalid seek

Even if I run ./tclkit-8.6b3

When I compile it without mk4tcl but use cvfs or zip instead.. It compiles, when I run it, it WORKS if I source any file. But i have a problem.

I can't seem to ever be able to succesfully build a starpack or use sdx.kit: (I know it uses vfs:mk4 but wth..?)

an't find package vfs::mkcl while executing "package require vfs::mkcl" (procedure "::vfs::mk4::Mount" line 4) invoked from within "::vfs::mk4::Mount /home/lostone/Programare/Tcl/freewrap-starkits/sdx.kit /home/lostone/Programare/Tcl/freewrap-starkits/sdx.kit -readonly" ("eval" body line 1) invoked from within "eval [list ::vfs::${driver}::Mount $self $self] $args"

Is there any (other) way I can build "starpacks" of my applications? Can I just append ZIPS? I'd be glad if anything else works!

Also doing a "package names" only gives a few names.. If I append any .tcl file to the executable and then do "package names" i get all the packages.. 95% of them source, some give errors like this: couldn't read file "/home/lostone/Programare/Tcl/freewrap-starkits/kitcreator/tclkit-8.6b3/lib/vfs/mk4vfs.tcl": no such file or directory

I tried building starkits with kitgen, kbs and even to compile It myself but I failed miserably every time. I think it either must be a 8.6b bug or something in the settings. The weird thing YOUR app was the ONLY one to run the code without coughing anything.. Though no starkit/starpack/zip way to deploy an app.

Thanks in advance and keep up the good work!

\n
Sorry about the bad editing, i thought it would come out as I typed with bold and stuff.. seems i ought to had used pre


rkeene added on 2012-09-25 15:28:38 UTC:
To whom it may concern,

There is an issue with Metakit and Tcl trunk (8.6b3 was just released from trunk). I have not resolved it yet, but it will likely result in a new patch against metakit being added to kitcreator's list of metakit patches.

In the mean-time you can indeed use zip- or cvfs-based storage.

In zip-based storage there is a zip-file already appended to the exectuable that you need to update. You should be able to extract it using the "unzip" command, or update it using the "zip" command.

For cvfs-based storage the base of the kit is stored in an internal archive that cannot be modified, but if you attach your source code in the form of a zip file appended to the end of the executable it will be picked up and used.

That is, for CVFS:

        cd myapp.vfs
        zip -r ../myapp.zip *
        cd ..
        cat tclkit-using-cvfs myapp.zip > tclkit-with-myapp
        chmod +x tclkit-with-myapp

Thanks, Roy Keene


rkeene added on 2012-09-25 15:42:59 UTC:
Another workaround is to use Tcl 8.6b2 or 8.5.12 instead of 8.6b3. Metakit works with those versions.


rkeene added on 2012-10-08 19:35:44 UTC:
Fixed in [94567b3779]