hi roman,
thanks for bringing this one up :). just tested it on OSX and here is what I got: it has some effect, but not as supposed. It extends the path relative to the directory of the pdpatch (and not as stated in the help "relative to Pd"). in your case: it seems your testpatch resides in /home/roman/testpatch97.pd. therefor [declare -stdpath extra/mrpeach] extends the searchpath to /home/roman/extra/mrpeach. so all the lines that contain "tried /home/roman/extra/mrpeach/..." are a result of the declare object.
The behaviour is definitely not as written in the docs, but it kind of makes sense to make relative declarations always relative to the file location as opposed to the pd binary.
so you can decide what exactly the bug is, the wrong behaviour or the wrong documentation.
regarding the "relative to what?" question, I think both behaviours could be useful (rel to patch and rel to Pd). Maybe "declare -stdpath" should actually be "declare -relpath" (relative to the patch) and "declare -rel2pdpath" (relative to the pd binary), but then is the directory of "pd binary" really the directory that all paths should be relative to? or as some other people already suggested, make it relative to the directory that holds the "bin" and the "extra" (and the "src") folder.
marius.
Roman Haefeli wrote:
hi all
i have [tcpserver] from mrpeach installed in:
/usr/local/lib/pd/extra/mrpeach/tcpserver.pd_linux
and i have a patch with:
[declare -stdpath extra/mrpeach]
[tcpserver]
however, [tcpserver] doesn't instantiate. as verbose output i get:
tried /home/roman/extra/mrpeach/tcpserver.l_i386 and failed tried /home/roman/tcpserver.l_i386 and failed tried /usr/local/lib/pd/extra/tcpserver.l_i386 and failed tried /home/roman/extra/mrpeach/tcpserver.pd_linux and failed tried /home/roman/tcpserver.pd_linux and failed tried /usr/local/lib/pd/extra/tcpserver.pd_linux and failed tried /home/roman/extra/mrpeach/tcpserver/tcpserver.l_i386 and failed tried /home/roman/tcpserver/tcpserver.l_i386 and failed tried /usr/local/lib/pd/extra/tcpserver/tcpserver.l_i386 and failed tried /home/roman/extra/mrpeach/tcpserver/tcpserver.pd_linux and failed tried /home/roman/tcpserver/tcpserver.pd_linux and failed tried /usr/local/lib/pd/extra/tcpserver/tcpserver.pd_linux and failed tried /home/roman/extra/mrpeach/tcpserver.pd and failed tried /home/roman/tcpserver.pd and failed tried /usr/local/lib/pd/extra/tcpserver.pd and failed tried /home/roman/extra/mrpeach/tcpserver.pat and failed tried /home/roman/tcpserver.pat and failed tried /usr/local/lib/pd/extra/tcpserver.pat and failed tcpserver .... couldn't create
it seems, that [declare -stdpath] is completely ignored. do i oversee something or is [declare -stdpath] broken? this is with pd-vanilla 0.41 on ubuntu hardy (without any ~/.pdrc nor any other preference file)
i'll post a bug report, if someone can confirm it, but i would like someone else to confirm it first, since i am a bit cautious with bugreports about declare, since there's lots that someone can (me) do wrong when testing it.
___________________________________________________________ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
Pd-dev mailing list Pd-dev@iem.at http://lists.puredata.info/listinfo/pd-dev