<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs]]></title><description><![CDATA[<p>Hi all,<br />
it has been a while, hope you are all doing well despite the times.</p>
<p>I'm on Linux Mint 20 on a DELL M4800. I installed pd with:</p>
<p>sudo apt install -y puredata</p>
<p>The available package is 0.50.2. I'm aware this is not the newest, but I would expect the package to be fully functional since it's available in public repos.</p>
<p>The problem is that Pd works fine but numerous libs are broken, i.e., objects cannot be created.<br />
This affects both libraries that came with the puredata package I installed <em>and</em> libraries that I installed via deken.</p>
<p>I confirmed that, at least for the broken libs installed via deken, it was not a problem with [declare] or paths or startup prefs, because I replaced the broken libs with older versions of the same libs that I had in my archive, while keeping the same paths prefs. The older versions of the libs work.</p>
<p>The libraries installed via deken that are broken are so far:</p>
<ul>
<li>zexy</li>
<li>timbreID</li>
<li>maxlib</li>
<li>iemlib</li>
<li>iemgui</li>
<li>creb</li>
</ul>
<p>Other broken objects from /puredata/extra/ :</p>
<ul>
<li>bonk~</li>
<li>sigmund~</li>
<li>fiddle~</li>
</ul>
<p>There may be more that I haven't noticed, these are the ones I use in my projects.</p>
<p>Am I doing anything wrong, or is there something wrong with this package, and if so, any idea what could it be?<br />
I'm speculating it could be some objects are compiled for an incorrect architecture, or perhaps some issue with the libraries loader?</p>
<p>Thanks in advance for the help,<br />
best wishes,</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs</link><generator>RSS for Node</generator><lastBuildDate>Sat, 13 Jun 2026 15:06:11 GMT</lastBuildDate><atom:link href="http://forum.pdpatchrepo.info/topic/13078.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 16 Oct 2020 13:27:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Fri, 16 Oct 2020 13:27:52 GMT]]></title><description><![CDATA[<p>Hi all,<br />
it has been a while, hope you are all doing well despite the times.</p>
<p>I'm on Linux Mint 20 on a DELL M4800. I installed pd with:</p>
<p>sudo apt install -y puredata</p>
<p>The available package is 0.50.2. I'm aware this is not the newest, but I would expect the package to be fully functional since it's available in public repos.</p>
<p>The problem is that Pd works fine but numerous libs are broken, i.e., objects cannot be created.<br />
This affects both libraries that came with the puredata package I installed <em>and</em> libraries that I installed via deken.</p>
<p>I confirmed that, at least for the broken libs installed via deken, it was not a problem with [declare] or paths or startup prefs, because I replaced the broken libs with older versions of the same libs that I had in my archive, while keeping the same paths prefs. The older versions of the libs work.</p>
<p>The libraries installed via deken that are broken are so far:</p>
<ul>
<li>zexy</li>
<li>timbreID</li>
<li>maxlib</li>
<li>iemlib</li>
<li>iemgui</li>
<li>creb</li>
</ul>
<p>Other broken objects from /puredata/extra/ :</p>
<ul>
<li>bonk~</li>
<li>sigmund~</li>
<li>fiddle~</li>
</ul>
<p>There may be more that I haven't noticed, these are the ones I use in my projects.</p>
<p>Am I doing anything wrong, or is there something wrong with this package, and if so, any idea what could it be?<br />
I'm speculating it could be some objects are compiled for an incorrect architecture, or perhaps some issue with the libraries loader?</p>
<p>Thanks in advance for the help,<br />
best wishes,</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs</guid><dc:creator><![CDATA[MarcoDonnarumma]]></dc:creator><pubDate>Fri, 16 Oct 2020 13:27:52 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Fri, 16 Oct 2020 16:32:12 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/marcodonnarumma">@MarcoDonnarumma</a> This would most likely be an issue with either the package or your system, my self compiled copy of 50-2 had no issues with zexy, maxlib or iemlib from what I remember, certainly had no issues with sigmund~.  I would download the source and compile, if that come out good and proper drop the package maintainer a note, if not the output of config/make will likely give you some answers, at least with the externals.</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/2</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/2</guid><dc:creator><![CDATA[oid]]></dc:creator><pubDate>Fri, 16 Oct 2020 16:32:12 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Mon, 19 Oct 2020 15:21:59 GMT]]></title><description><![CDATA[<p>Hi <a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/oid">@oid</a></p>
<p>ok, I see, that's what I wanted to know.</p>
<p>It would be good to know whether anyone else has installed the same package and is not having troubles, or else...</p>
<p>Yes, compiling is a good way to understand whether it is my system, thanks for the suggestion. That said, I have a fresh linux mint install, so it would be strange, but one never knows.</p>
<p>Not sure when I can do it since this is happening on my production/touring machine, that's why I was looking to know more about others' experiences. But I'll post info here if I discover anything relevant.</p>
<p>Thanks for now!</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/3</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/3</guid><dc:creator><![CDATA[MarcoDonnarumma]]></dc:creator><pubDate>Mon, 19 Oct 2020 15:21:59 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Wed, 21 Oct 2020 15:58:45 GMT]]></title><description><![CDATA[<p>ok, so I found time to compile Pd, 0.51.2, and I think now I understand my problem was twofold.</p>
<p>Pd compiles fine and all libraries in /extra works fine now.<br />
So the fact that those same libraries installed by the public package were broken could point to issues with the package itself, as <a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/oid">@oid</a> suggested.</p>
<p>The other issue with the libraries installed via deken. Well, on one hand is my bad: those broken libraries I had installed were not technically broken, but simply compiled for AMD64_32 which is a different architecture than my machine (which is 64-bit). I had installed the 32-bit version without even checking what it was, I assumed the most recent deken package would be compiled for all platforms, but apparently this is not the case.</p>
<p>Which leads to my other question: I find it strange that those very common pd libs are not compiled for 64-bit platforms?</p>
<p>Anyway, issue is not entirely solved, but at least I understand now what has happened.</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/4</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/4</guid><dc:creator><![CDATA[MarcoDonnarumma]]></dc:creator><pubDate>Wed, 21 Oct 2020 15:58:45 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Wed, 21 Oct 2020 19:15:40 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/marcodonnarumma">@MarcoDonnarumma</a> Zexy from deken on my arch linux system includes a zexy.pd_linux file, which is definitely 64-bit (and loads fine). I'm pretty sure this is the file that zexy loads from on linux. Note that zexy and iemlib are now single-object libraries (you need to either load it as a library/set the path to them from the preferences, or use <code>[declare -lib zexy -path zexy]</code> in a patch.)</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/5</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/5</guid><dc:creator><![CDATA[seb-harmonik.ar]]></dc:creator><pubDate>Wed, 21 Oct 2020 19:15:40 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Wed, 21 Oct 2020 19:44:26 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/marcodonnarumma">@MarcoDonnarumma</a> AMD64_32 would be a fat binary or a typo, there is no 32bit AMD-64bit architechture, that is non-sense?, but there are also some labeled as AMD64_64 and i386-32, both of which are redundant. Dekken really should follow standard conventions for architectures, i386 for 32bit, AMD64 for 64bit and FAT for both 32/64bit with OS prepended. It is a fairly confusing mess. Most likely your problem was a mix of a broken or corrupt package and @seb-harmonikar's point, the older zexy you installed likely just worked with the old external convention of just being in your path, the most recent does not.</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/6</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/6</guid><dc:creator><![CDATA[oid]]></dc:creator><pubDate>Wed, 21 Oct 2020 19:44:26 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Fri, 23 Oct 2020 10:32:42 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/seb-harmonik-ar">@seb-harmonik-ar</a> thanks, yes, I had set the path to zexy in my preferences. The objects would not created not only in my own patches bu also in their own help files. And with the same prefs path, my old zexy works fine, while the newly downloaded zexy from deken is broken. Not all objects are broken but many of them. I checked a few help file at random and 4/5 help files had broken objects.</p>
<p>Anyway, I did more testing and I'm a little baffled. It turns out that whether I add zexy to the path preferences or not is completely irrelevant. If I do it or not, zexy from deken doesn't work.</p>
<p>The lib works <em>only</em> when I include  [declare -lib zexy -path zexy], as Seb suggested. Now, this doesn't really make sense from a user point of view: first, because this is not indicated anywhere, and second, because the declare object is not included in zexy's own help files. This means that when one uses the Pd Browser to open some zexy help files, most patches are broken because zexy itself doesn't get loaded by its own help files. Am I missing something here? This seems to me a weird approach, does anybody knows whether this is wanted by IOhannes (who I think is the maintainer)?</p>
<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/oid">@oid</a> Yes, that's exactly what I find confusing, and I agree with you that deken should follow conventions. That said, from a brief research on AMD64_32, it would seem that it refers to code compiled so as to run as 32-bit on a 64-bit system.<br />
See for instance: <a href="https://www.oracle.com/database/technologies/instant-client/linux-amd64-downloads.html" rel="nofollow">https://www.oracle.com/database/technologies/instant-client/linux-amd64-downloads.html</a><br />
<a href="https://wiki.gentoo.org/wiki/Project:AMD64/32-bit_Chroot_Guide" rel="nofollow">https://wiki.gentoo.org/wiki/Project:AMD64/32-bit_Chroot_Guide</a></p>
<p>In any case, as per my message above the AMD64_32 version works, but only with [declare].<br />
(and zexy versions from 2015 in deken are named AMD64_64, by the way).</p>
<p><img src="/uploads/files/1603449159710-pd-zexy-deken.png" alt="pd-zexy-deken.png" class="img-responsive img-markdown" /></p>
<p>mmmm....</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/7</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/7</guid><dc:creator><![CDATA[MarcoDonnarumma]]></dc:creator><pubDate>Fri, 23 Oct 2020 10:32:42 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Fri, 23 Oct 2020 10:41:41 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/marcodonnarumma">@MarcoDonnarumma</a> It may also work if you just add the word &quot;zexy&quot; to libraries, not search paths. The reason is that a few externals are called libraries and have to be treated differently.</p>
<p>And yes, there is no way to figure this out by yourself, there is no indication which external is a library and Pd should hide this complexity from the user, as it is of no relevance to the user. Pd is really flawed here. Also [declare -lib] and [declare -path] should just be [declare].</p>
<p>Also Deken should take care of this automatically. It is a mess.</p>
<p>Sorry for the german interface, this is libraries:</p>
<p><img src="/uploads/files/1603449568418-bildschirmfoto-vom-2020-10-23-12-34-33.png" alt="Bildschirmfoto vom 2020-10-23 12-34-33.png" class="img-responsive img-markdown" /></p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/8</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/8</guid><dc:creator><![CDATA[ingox]]></dc:creator><pubDate>Fri, 23 Oct 2020 10:41:41 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Fri, 23 Oct 2020 15:39:30 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/marcodonnarumma">@MarcoDonnarumma</a> I agree, single-binary external libraries should have <code>[declare -lib libraryname]</code> in their helpfiles. I would think Iohannes probably assumed people would just load the library through some other method before opening help files, or maybe he just didn't think about it or have the time.</p>
<p>as <a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/ingox">@ingox</a> said, having zexy in your path is not enough because you have to load the library from a single binary. Therefore you must also put it in the startup list: &quot;Pd libraries to load on startup&quot;, or start pd with the flag &quot;-lib zexy&quot;</p>
<p>it should be noted that this info is in the documentation <a href="http://msp.ucsd.edu/Pd_documentation/x4.htm#s3.1.2" rel="nofollow">http://msp.ucsd.edu/Pd_documentation/x4.htm#s3.1.2</a></p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/9</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/9</guid><dc:creator><![CDATA[seb-harmonik.ar]]></dc:creator><pubDate>Fri, 23 Oct 2020 15:39:30 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Mon, 16 Nov 2020 11:47:36 GMT]]></title><description><![CDATA[<p>Hey <a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/seb-harmonik-ar">@seb-harmonik.ar</a> <a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/ingox">@ingox</a> thanks for the pointers.</p>
<p>Without wanting to take away anything from the fantastic latest developments of Pd, I find it a bit disheartening to find out that - after using Pd since 14 years - some basic usability flaws like these ones are still not addressed. It's not really a lot of effort or a drastic change.</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/10</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/10</guid><dc:creator><![CDATA[MarcoDonnarumma]]></dc:creator><pubDate>Mon, 16 Nov 2020 11:47:36 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Mon, 16 Nov 2020 21:36:03 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/marcodonnarumma">@MarcoDonnarumma</a> Totally agree. <img class="emoji emoji-extended" src="http://forum.pdpatchrepo.info/plugins/nodebb-plugin-emoji-extended/images/smiley.png" title="smiley" alt=":smiley:" /></p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/11</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/11</guid><dc:creator><![CDATA[ingox]]></dc:creator><pubDate>Mon, 16 Nov 2020 21:36:03 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Mon, 16 Nov 2020 23:13:15 GMT]]></title><description><![CDATA[<p>One way that this could be improved:</p>
<ul>
<li>
<p>Pd could recommend externals be placed under a specific location. (Actually, here, you could follow SuperCollider's lead and have a system-wide location <em>and</em> a user-specific location.)</p>
</li>
<li>
<p>Per patch file, keep a list of which locations have provided externals or abstractions.</p>
</li>
<li>
<p>If an object isn't found in core, search <em>recursively</em> under the external location(s).</p>
<ul>
<li>If the object is under a subdirectory that already provided an object to this patch file, then add the new object silently.</li>
<li>If there is a binary library in the access path, load it automatically. Do not make the user distinguish between lib and path.</li>
<li>If it's the first time this subdirectory provided an object to this patch file, print a message in the console (help the user not overlook the dependency).</li>
</ul>
</li>
<li>
<p>Have a menu option to print a list of dependencies. (If the list of external subdirectories is saved in the patch, this is easy.)</p>
</li>
</ul>
<p>For me, the sticking points are that the search is non-recursive (this design decision, frankly, baffles me, I could not disagree with it more strongly) and that the user is expected to know which external packs provide a single-binary library.</p>
<p>hjh</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/12</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/12</guid><dc:creator><![CDATA[ddw_music]]></dc:creator><pubDate>Mon, 16 Nov 2020 23:13:15 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Mon, 16 Nov 2020 23:33:46 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/ddw_music">@ddw_music</a> As i have mentioned before here in the forum, this whole complexity should be hidden from the user.</p>
<p>On the other hand, it doesn't really help that we are moaning the situation here in the forum. We should bring this issue to the mailing list, this is the only way to reach the core developers other than to make actual contributions to the code our self. Maybe if the pressure gets strong enough, there will be a solution in the end. <img class="emoji emoji-extended" src="http://forum.pdpatchrepo.info/plugins/nodebb-plugin-emoji-extended/images/wink.png" title=";)" alt=";)" /></p>
<p><a href="https://lists.puredata.info/listinfo/pd-list" rel="nofollow">https://lists.puredata.info/listinfo/pd-list</a></p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/13</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/13</guid><dc:creator><![CDATA[ingox]]></dc:creator><pubDate>Mon, 16 Nov 2020 23:33:46 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Mon, 16 Nov 2020 23:54:01 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/ddw_music">@ddw_music</a> said:</p>
<blockquote>
<p>One way that this could be improved:</p>
<ul>
<li>Pd could recommend externals be placed under a specific location. (Actually, here, you could follow SuperCollider's lead and have a system-wide location <em>and</em> a user-specific location.)</li>
</ul>
</blockquote>
<p>well, pd does now prompt/recommend a directory for installing externals (e.g. ~/Documents/Pd). It just so happens that the path isn't in the static paths. It was better when there were just 2 standard library locations: 1 for system-wide libraries and 1 for user-specific libraries (e.g. /Library/Pd and ~/Library/Pd on osx). This is still technically the case, they're just not the directories that pd prompts the user to install externals to. (though they are installed there by default) <a href="http://msp.ucsd.edu/Pd_documentation/x4.htm#s2.1" rel="nofollow">http://msp.ucsd.edu/Pd_documentation/x4.htm#s2.1</a></p>
<p>imo prompting the user to create ~/Documents/Pd and install externals there is a mistake</p>
<blockquote>
<ul>
<li>Per patch file, keep a list of which locations have provided externals or abstractions.</li>
</ul>
</blockquote>
<p>the declare help file does say &quot;WARNING: as of version 0.47, &quot;declare -path&quot; and &quot;declare -stdpath&quot; inside abstractions take effect only within those abstractions. If Pd's compatibility version is set to 0.46 or earlier the old (buggy) behavior takes effect.&quot;<br />
perhaps this could be extended to libraries too</p>
<blockquote>
<ul>
<li>If there is a binary library in the access path, load it automatically. Do not make the user distinguish between lib and path.</li>
</ul>
</blockquote>
<p>I agree that if someone specifies &quot;-lib&quot; it should work for multi-object, abstraction, and single-object libraries. However there should be cases for adding to a path without it being a library imo.<br />
maybe the solution is a general &quot;import&quot; object for libraries like extended used to have, since <code>[declare]</code> seems to be designed to refer to specific binaries and paths without any further method of abstraction.</p>
<blockquote>
<ul>
<li>If it's the first time this subdirectory provided an object to this patch file, print a message in the console (help the user not overlook the dependency).</li>
</ul>
</blockquote>
<p>I don't think this is a good idea. It would clog up the console. maybe there could be some kind of helper object or something in <code>[pdcontrol]</code> or <code>[declare]</code> that gets a list of all of the library or external dependencies of a patch when the user needs them. (or maybe some external would be better).</p>
<blockquote>
<ul>
<li>Have a menu option to print a list of dependencies. (If the list of external subdirectories is saved in the patch, this is easy.)</li>
</ul>
</blockquote>
<p>The whole idea of using <code>[declare]</code> is to be able to understand a patch's dependencies just by opening it. Of course when people develop with libraries loaded into their startup path instead of using <code>[declare]</code> or <code>[libraryname/objectname]</code>, that doesn't work. But if people actually used <code>[import]</code> or something instead this would be unnecessary</p>
<blockquote>
<p>For me, the sticking points are that the search is non-recursive (this design decision, frankly, baffles me, I could not disagree with it more strongly) and that the user is expected to know which external packs provide a single-binary library.</p>
</blockquote>
<p>I think it's good that libraries aren't searched recursively. This allows the maintainer/developer full control of loading resources, and doesn't waste time searching potentially large non-object resource directories in a library every time an object is loaded.</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/14</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/14</guid><dc:creator><![CDATA[seb-harmonik.ar]]></dc:creator><pubDate>Mon, 16 Nov 2020 23:54:01 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Mon, 16 Nov 2020 23:44:40 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/ingox">@ingox</a> or file feature requests on github..</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/15</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/15</guid><dc:creator><![CDATA[seb-harmonik.ar]]></dc:creator><pubDate>Mon, 16 Nov 2020 23:44:40 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Tue, 17 Nov 2020 01:31:08 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/seb-harmonik-ar">@seb-harmonik.ar</a> Yes. This has been done: <a href="https://github.com/pure-data/pure-data/pull/440" rel="nofollow">https://github.com/pure-data/pure-data/pull/440</a>.</p>
<p>Anybody with a github account can upvote this or comment.</p>
<p>Here are some more discussions around the topic: <a href="https://github.com/pure-data/pure-data/issues?page=1&amp;q=declare" rel="nofollow">https://github.com/pure-data/pure-data/issues?page=1&amp;q=declare</a>. <img class="emoji emoji-extended" src="http://forum.pdpatchrepo.info/plugins/nodebb-plugin-emoji-extended/images/wink.png" title=";)" alt=";)" /></p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/16</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/16</guid><dc:creator><![CDATA[ingox]]></dc:creator><pubDate>Tue, 17 Nov 2020 01:31:08 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Wed, 18 Nov 2020 00:35:53 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/seb-harmonik-ar">@seb-harmonik.ar</a> said:</p>
<blockquote>
<p><a class="plugin-mentions-a" href="http://forum.pdpatchrepo.info/user/ddw_music">@ddw_music</a> said:</p>
<blockquote>
<p>One way that this could be improved:</p>
<ul>
<li>Per patch file, keep a list of which locations have provided externals or abstractions.</li>
</ul>
</blockquote>
<blockquote>
<ul>
<li>If it's the first time this subdirectory provided an object to this patch file, print a message in the console (help the user not overlook the dependency).</li>
</ul>
</blockquote>
<p>I don't think this is a good idea. It would clog up the console...</p>
</blockquote>
<p>My two quoted suggestions here go together: If the patch object has a list internally of its dependencies, then it's possible to report a dependency <em>only</em> the first time it's accessed in a given patch file. If I open a new patch and create a [gate] and later a [play~], I would want to see a message about cyclone <em>only once</em> per patch file, not per cyclone object. Obviously the latter would be clutter <em>but</em> my suggestion as worded was intended to avoid excessive clutter: &quot;If it's the first time this subdirectory provided an object to this patch file...&quot;</p>
<blockquote>
<blockquote>
<ul>
<li>If there is a binary library in the access path, load it automatically. Do not make the user distinguish between lib and path.</li>
</ul>
</blockquote>
</blockquote>
<p>I realized later that there's a flaw to this logic: you don't know which objects a library binary provides without loading the binary -- so in practice, object search might need to load <em>all</em> binaries <img class="emoji emoji-extended" src="http://forum.pdpatchrepo.info/plugins/nodebb-plugin-emoji-extended/images/laughing.png" title="laughing" alt=":laughing:" /> Of course that would not be ok. It may be a solvable problem, if there's some way for a binary to make an object manifest known without fully initializing.</p>
<p>^^ This explains why search is non-recursive, so I'll have to drop my earlier comment about that.</p>
<blockquote>
<blockquote>
<ul>
<li>Have a menu option to print a list of dependencies. (If the list of external subdirectories is saved in the patch, this is easy.)</li>
</ul>
</blockquote>
<p>maybe there could be some kind of helper object or something in <code>[pdcontrol]</code> or <code>[declare]</code> that gets a list of all of the library or external dependencies of a patch when the user needs them. (or maybe some external would be better).</p>
</blockquote>
<p>Sure, that would work. There's not a substantive difference between those approaches.</p>
<p>FWIW SuperCollider's &quot;greedy&quot; approach to loading extensions isn't totally ideal either -- because method dispatch is resolved at runtime, there's no way to know by scanning code whether a method call will hit an extension, or which one. I've been bitten by this more times than I can count. That's one reason why I switched my Pd teaching over to use [declare].</p>
<p>The -lib vs -path thing, though... sheesh, it's like &quot;let's deliberately annoy users and drive them away&quot; -- and that pull request is <em>hilarious</em> -- &quot;hmm, but what if you want to declare a library that is called <code>-path</code>?&quot; Really? <em>This</em> kind of bizarre hypothetical is why they would question an honest attempt to make life easier for users? &quot;Oh, let's push this idea into limbo because of something that nobody with an ounce of common sense would ever do&quot; <img class="emoji emoji-extended" src="http://forum.pdpatchrepo.info/plugins/nodebb-plugin-emoji-extended/images/laughing.png" title="laughing" alt=":laughing:" /></p>
<p>hjh</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/17</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/17</guid><dc:creator><![CDATA[ddw_music]]></dc:creator><pubDate>Wed, 18 Nov 2020 00:35:53 GMT</pubDate></item><item><title><![CDATA[Reply to Fresh Pd 0.50.2 install comes with broken libs and deken installs broken libs on Tue, 09 Feb 2021 13:00:31 GMT]]></title><description><![CDATA[<p>Hey all! Just noticed the conversation went on. Strange I didn't receive a notification of the new messages.</p>
<p>Anyway, just saying I just upvoted the proposed implementation and expressed my view on the -path library scenario.<br />
Hope it helps a little. I'll try to follow the convo on github.</p>
]]></description><link>http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/18</link><guid isPermaLink="true">http://forum.pdpatchrepo.info/topic/13078/fresh-pd-0-50-2-install-comes-with-broken-libs-and-deken-installs-broken-libs/18</guid><dc:creator><![CDATA[MarcoDonnarumma]]></dc:creator><pubDate>Tue, 09 Feb 2021 13:00:31 GMT</pubDate></item></channel></rss>