-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2012-10-25 06:18, Hans-Christoph Steiner wrote:
> 
> yup:
> 
> hans@palatschinken bin $ dpkg -l tkpng 
> Desired=Unknown/Install/Remove/Purge/Hold |
> Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
>
> 
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
> ||/ Name             Version          Description 
> +++-================-================-================================================
>
> 
ii  tkpng            0.9-1ubuntu1     PNG photo image support to Tcl/Tk
> 
> 
> Does it not work with Tcl/Tk 8.5?
> 
> hans@palatschinken bin $ tclsh % info patchlevel 8.5.11

works here:

zmoelnig@ferrari:~$ tclsh
% info patchlevel
8.5.11
zmoelnig@ferrari:~$ dpkg -l tkpng
ii  tkpng   0.9-1 i386   PNG photo image support to Tcl/Tk


originally i had the same problem:
$ ./pd-l2ork
tcl: /tmp/pd-l2ork/bin/pd.tk: can't open script
pd: exiting


but indeed i was missing tkpng first. i discovered this by directly
running (after making pd.tk executable)
$ ./pd.tk
which initially threw an error "Error in startup script: can't find
package tkpng".

so the "can't open script" error is a bit misleading (or generic).

attached is a small patch that prints the full error message of the
Tcl-Interpreter.

fgmasdr
IOhannes
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAlCJTRYACgkQkX2Xpv6ydvRuzgCgwy8NkGHXHgWqK/kLgY2a7fUh
fVEAn3mn9prk3dEVd9ut/JGJN7tufk2h
=SSeI
-----END PGP SIGNATURE-----
>From 9e29d9c9670713438c500af9f8843e8a9c03dc7d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?IOhannes=20m=20zm=C3=B6lnig?= <zmoel...@iem.at>
Date: Thu, 25 Oct 2012 16:29:15 +0200
Subject: [PATCH] print meaningfull error-message

in case Tcl_EvalFile fails
---
 src/t_tkcmd.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/src/t_tkcmd.c b/src/t_tkcmd.c
index a66e5ed..c33568e 100644
--- a/src/t_tkcmd.c
+++ b/src/t_tkcmd.c
@@ -582,6 +582,7 @@ void pdgui_doevalfile(Tcl_Interp *interp, char *s)
     if (Tcl_EvalFile(interp, buf) != TCL_OK)
     {
         char buf2[1000];
+        printf("ERROR: %s\n", interp->errorLine, Tcl_GetStringResult(interp));
         sprintf(buf2, "puts [concat tcl: %s: can't open script]\n",
             buf);
         tcl_mess(buf2);
-- 
1.7.10.4

_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to