Hi, everyone!
Been a while since I used pure data, and at the time it was mostly pd-extended. Using vanilla now, version 0.48.1, on Ubuntu Bionic. A lot of nice additions to puredata, and a lot of nice packages in the Debian repo!
I'm having problems loading tcl patches (such as the help files that come with tclpd). It seems the tclpd lib is loaded, however. I set the path settings to verbose and could see from the console output that the library is in deed loaded.
I have puredata installed, with tcl8.6.
What am I missing?
No, sorry. I missed the last part of the console output saying 'tclpd: can't load library'.
Further up it did say 'tried /path/to/tclpd.pd_linux and succeeded', so the file is in deed found.
On Sun, Jul 8, 2018, at 8:31 PM, Kaj Ailomaa wrote:
Hi, everyone!
Been a while since I used pure data, and at the time it was mostly pd- extended. Using vanilla now, version 0.48.1, on Ubuntu Bionic. A lot of nice additions to puredata, and a lot of nice packages in the Debian repo!
I'm having problems loading tcl patches (such as the help files that come with tclpd). It seems the tclpd lib is loaded, however. I set the path settings to verbose and could see from the console output that the library is in deed loaded.
I have puredata installed, with tcl8.6.
What am I missing?
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
I've also tried compiling from source, using tcl8.6 dev lib. Not sure if I got all the variables straightened out. Compiled fine after editing the Makefile, and I also changed the version for tcl in the file 'tclpd.tcl'.
TL;DR: there's a bug in Pd's development files for which i've submitted a fix.
On 2018-07-08 21:11, Kaj Ailomaa wrote:
No, sorry. I missed the last part of the console output saying 'tclpd: can't load library'.
Further up it did say 'tried /path/to/tclpd.pd_linux and succeeded', so the file is in deed found.
raise the verbosity, and you might see something like:
$ pd -verbose -lib tclpd
[...]
tried /usr/lib/pd/extra/tclpd/tclpd.pd_linux and succeeded
/usr/lib/pd/extra/tclpd/tclpd.pd_linux: undefined symbol:
glist_amreloadingabstractions
tclpd automatically creates a mapping between the symbols (functions, variable names) declared in Pd's header files and the tcl scripting language. unfortunately, some of the symbols Pd declares as being exported (and thus usable by an external), are nowhere defined. this is usually not a problem, as these symbols seem to be used by no external developer in the world (and if they were used, the problem would be quickly discovered). however, tclpd is slightly different, as *all* symbols are used automatically (due to the automated mapping).
the solution to the problem is to fix Pd's header files to only include symbols that actually exist, and then to recompile tclpd.
i've submitted a fix for this in the "bugfixes" branch on github (commits a449bd24..d971f8f9)
i've also updated the Debian package and uploaded it to Debian/unstable last night (so it will be included in Ubuntu Cosmic). a new binary of the "pd-tclpd" Debian package will be available soon.
gfmasd IOhannes
i've also updated the Debian package and uploaded it to Debian/unstable last night (so it will be included in Ubuntu Cosmic). a new binary of the "pd-tclpd" Debian package will be available soon.
gfmasd IOhannes
I just installed the deb package and tclpd loaded fine. Thanks IOhannes!