[PD] 64bit runtime error 'couldn't read file "/usr/tcl//pd-gui.tcl"'

David Woodfall dave at dawoodfall.net
Wed Apr 9 11:57:31 CEST 2014

>>Hash: SHA256
>>On 2014-04-09 10:01, David Woodfall wrote:
>>>Compiled from source obtained from the pd project page, using this
>>> method to package it:
>>i can think of three different "project pages":
>>- - http://msp.ucsd.edu/software.html
>>- - http://puredata.info/
>>- - http://sourceforge.net/projects/pure-data
>>>--prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \
>>>--sysconfdir=/etc \ --datadir=/usr/share/pd \ --localstatedir=/var
>>i guess these are standard configure flags for slackware builds, as
>>most of them are not used in Pd.
>>>--enable-alsa \ --enable-setuid \ --enable-jack \
>>>--enable-portaudio \ --disable-portmidi
>>>make make install DESTDIR=$PKG
>>>>which OS are you using? your path only indicate that it is a
>>>>un*x like system, but it might help to know whether you are using
>>>>some obscure linux distro or plain irix :-)
>>>Slackware linux 14.1 64bit
>>i don't have any experience with slackware, however...
>>>>>% locate pd-gui.tcl /usr/bin/pd-gui.tcl
>>>>/usr/lib64/? is this path still used on some (linux) systems?
>>>I though most 64bit OS's used /usr/lib64?
>>i'm mainly using Debian, which has switched to a more extendible
>>scheme a while ago (using /usr/lib/x86_64-linux-gnu/ and the like)
>>it also allow to put "native" libraries (e.g. 64bit libs on a 64bit
>>system) directly into /usr/lib/.
>>anyhow, Pd currently hardcodes it's system path to (afaict)
>>@prefix@/lib/pd/ (to be precise, it tries some more, but it definitely
>>does *not* use @prefix@/lib64/pd/ nor the more sensible "@libdir@/pd"
>>or even "@pkglibdir@".
>>so i guess you currently have to patch your Pd in order to make it
>>work on 64bit slackware. something like the following:
>>>sed -i -e "517s|lib/pd|lib${LIBDIRSUFFIX}/pd|" src/s_main.c
>The configure/Makfile do correctly put the libs in place.
>Package contents:
>But that doesn't mean that pd will look there for modules.
>I tried symlinking /usr/lib64/pd/tcl/pd_connect.tcl to /usr/bin/.
>but it still doesn't find it.
>Error in startup script: can't find package pd_connect
>   while executing
>"package require pd_connect"
>   (file "/usr/bin/pd-gui.tcl" line 26)
>I'm not quite sure where it is define where to look.

Aha! If I 'ln -s /usr/lib64/pd /usr/lib/pd' then it works. Gui starts
up just fine. So it seems those paths may be hard-coded somewhere.


More information about the Pd-list mailing list