Or better yet, without changing any files at all - invoke Pd with the full pathname, ../src/pd (or even ../src/pd!) instead of ./pd and I think all the filename bashing will work.
cheers M On Thu, Aug 07, 2014 at 12:14:16PM +0200, IOhannes m zmoelnig wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > thanks for the detailed description. > > On 2014-08-07 00:24, Jonathan Wilkes via Pd-list wrote: > > 4) ./src/pd > > > > Oops... Error in startup script: couldn't read file > > "/home/pd-0.45-5/src/tcl//pd-gui.tcl": no such file or directory > > this would be trivial to fix in Pd. > i haven't done this because i considered the problem an edge case (the > idea being, that we shouldn't add too much cruft to the source base to > cater for the needs of very few people, esp. as there are simple > workarounds). > > my usual workaround for this is: > $ cd src > $ ln -s ../tcl . > > > > > Which-- as I already stated in an old thread-- requires me to do > > this from the main pd directory: cp src/pd . > > > > Then run ./pd > > > > Now it runs. Great! > > > > [...] > > > So I don't get an updated binary in the src/ directory with "make", > > and I do get an updated binary when doing "make && make clean". > > > > actually no, the last part is not quite correct (though the effect is > the same). > > it seems that all the problems come from compiling Pd with the > included "portaudio", which enables a number of hacks to properly load > the included library (rather than one provided by the system). > this boils down to ./src/pd *not* being a binary at all, but instead > being a wrapper script, that launches the actual binary that is hidden > in ./src/.libs. > now when you copy the script ./src/pd to ./ and call it, it will > - - try to launch ./.libs/pd > and if that fails it will > - - (magically) find the correct binary in ./src/.libs/ and create a > local copy in ./.libs/; and then launch it. > > now when you do your changes to clip_float() and recompile, that > binary in ./src/.libs/ gets updated nicely, but when you call ./pd it > will still use it's outdated copy of the binary. > when running "make clean" the ./.libs/ folder (containing the outdated > copy) is deleted and later re-popuplated with the now-current binary. > > > i understand that this is a quite convoluted process, and that not > everyone wants to pile up the knowledge to understand and debug this > (and probably not even read my above explanation). > > > > i can offer 3 possible "solutions": > > - - disable "portaudio" when building Pd. this basically disables the > wrapper-script trickery and gives you a "src/pd" *binary* that can be > run without any hacks. > obviously this is not very practical if you *want* portaudio. > > - - use symlinks from ./src/tcl to ./tcl, and call ./src/pd; > (rather than copying ./src/pd to ./ and then call ./pd) > add this information to the documentation > > - - add code to Pd that searches for the tcl-files in the correct place, > even when called from the wrapper script. > > gfsd > IOhannes > > > > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1 > Comment: Using GnuPG with Icedove - http://www.enigmail.net/ > > iQIcBAEBCAAGBQJT41F1AAoJELZQGcR/ejb43K8P+wZzYCPoN5J6g1CPC3K69Wrj > 3nsyDm3ugJaGVSi/CJ7Gr+CVM/gkpckbSLvmCtABDRW0etFOVrdvaF42xlA/smT9 > 2bD4AzCzlXc/PWerEdjaKCoP/FiVZj5a99r2moJttMMlj5WU6PS1Q1+pPxEUh98r > FPMj+J069u1cArn57oTRFlKthW5yPNBdGBD7AVrvhkHC0kENmdQxqzQiioDHUsOQ > xTA62K0t4HU70s85gDSbEiGI8qIda4k50sDsAPNrYnGqiyi+AXN9C2BeKEVD/Nx3 > /Fmg0YDlzkMMrdjlY1YKwIHohC1S0ynrHs2zuCkzPCzeU0gAo1u5PHpNwExMy5Mq > h98yBWAdSuhLBGlyZAindGopHiES9julDO3NghQyVDSXFQmoGnQig+bVwuS938P6 > +l+BTk49kSoltiC9rYP+zusSQ0rFS5ytkyQPJXdegA93hvnroamTNEb0IL80V0dK > PCtUX2ngjMweBhJBbUrvD/MHzTaX6mIEgd1TX0xMk5wkeDwJNhFrlpnGWasAulhk > YX6ti0mZ9WnDBE4wlXZ4yVulx6eWa896J+aIL4/GcCf0XnKGETdh92DSBWGvLZjN > dwsXDAM5IxKhI95F6xU6MJ4y8y8W8U1iPe6rL2DxOKylhr8em8X0+R4CVyXg2QoQ > GLLBbHlrYH2TvQP3b5oB > =BURL > -----END PGP SIGNATURE----- > > _______________________________________________ > Pd-list@lists.iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list