Wow! Found a feature I didn't know existed. Just to recap: My problem is that I want to distrubute a complex patch, but I do not know all of the dependencies. So I want to build a list of such.
*In Pd version 0.46.7 (and perhaps others),* Edit -> Preferences -> Path Check "verbose". Now when you load a patch, it shows you a ton of spew on the Pd Console window, as it tries to find every object. Now you get stuff like this: tried C:/Users/BH/Music/pd/BHPDToolkitNEW/BHPDtoolkit-master/BHPDtoolkit-master/patches/EvenOddSynth~.m_i386 and failed tried C:/Users/BH/Music/pd/BHPDToolkitNEW/BHPDtoolkit-master/BHPDtoolkit-master/abstractions/EvenOddSynth~.m_i386 and failed tried C:/Program Files (x86)/pd-0.43.4-extended/extra/freeverb~/EvenOddSynth~.m_i386 and failed tried C:/Program Files (x86)/pd-0.43.4-extended/extra/cyclone/EvenOddSynth~.m_i386 and failed tried C:/Program Files (x86)/pd-0.43.4-extended/extra/iemlib/EvenOddSynth~.m_i386 and failed .*.. (snipped 951 lines!!)...* tried C:/Users/BH/AppData/Roaming/Pd/output~/output~.dll and failed tried C:/Program Files (x86)/Common Files/Pd/output~/output~.dll and failed tried C:/Program Files (x86)/Pure Data-0.46-7/extra/output~/output~.dll and failed tried C:/Users/BH/Music/pd/BHPDToolkitNEW/BHPDtoolkit-master/BHPDtoolkit-master/patches/output~.pd and failed tried C:/Users/BH/Music/pd/BHPDToolkitNEW/BHPDtoolkit-master/BHPDtoolkit-master/abstractions/output~.pd and *succeeded* .... but that's fine with me!! A little shell scripting and I get a list of all the objects used and exactly the pathname to them. PERFECT! Be prepared for a lot of output. My patch produced 3758 such lines! So it may not produce a dependency *tree* like I originally asked for, but I guess that's not what I really wanted. Hope this helps someone else... BH On Mon, Jun 6, 2016 at 4:52 PM, William Huston <williamahus...@gmail.com> wrote: > My idea is, I want to distribute a patch. > > But I build my patches with layers of abstractions. > > So I want to make a recursive map of the dependency tree, > including any external libraries needed, so I can know > what needs to be included when I distribute the patch. > > Has anyone tried this? > > I will probably do this with an external program, > probably Perl (not within Pd). > > First it seems I really need to understand how to > Pd does conflict resolution in case of name clashes. > > Next, it seems one must know the search path. > > This is a bit easier on Linux systems b/c it just > requires parsing a flat file. > > On Windows it requires parsing the Registry > (which I admit is still a big mystery for me). > > On My machine, I am finding the search path here: > > > HKEY_USERS\S-1-5-21-1970324843-3388967453-2642309065-1000\Software\Classes\VirtualStore\MACHINE\SOFTWARE\Wow6432Node\Pd\ > > npath=12 means 12 directories to search, each being > path1=(path1) > path2=(path2) > ... > path12=(path12) > > I also find this repeated here: > > > HKEY_USERS\S-1-5-21-1970324843-3388967453-2642309065-1000_Classes\VirtualStore\MACHINE\SOFTWARE\Wow6432Node\Pd > > One question is, where does this strange string come from? > Is this guaranteed to be the same on every Windows systems? > > S-1-5-21-1970324843-3388967453-2642309065-1000 > S-1-5-21-1970324843-3388967453-2642309065-1000_Classes > > Ugh. Anyway, just looking for some general guidance here. > > Thanks, > BH > > -- > -- > May you, and all beings > be happy and free from suffering :) > -- ancient Buddhist Prayer (Metta) > -- -- May you, and all beings be happy and free from suffering :) -- ancient Buddhist Prayer (Metta)
_______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list