On 12/5/10 Dec 5 -9:15 PM, Jianshi Huang wrote:
Hi,
Could anybody show me what's the recommended approach to make all the compiled files to be stored in a relative directory, either in .asd file or by lisp code? I'm using ASDF 2.010
Say, if I have a project in $HOME/prj/ with prj.asd defined, and all it's dependencies in $HOME/prj/lib/. When I load the project in sbcl, I want all the compiled fasl files to be stored under $HOME/prj/fasl/sbcl/.
I can only find configuration files in manual and am not sure about the usage of other APIs. An pseudo-code example would be very helpful.
P.S.
I was doing (setf asdf::*user-cache* ...) and it worked fine in 2.009, but it seems not working in 2.010.
Have you tried enabling ASDF-BINARY-LOCATIONS-COMPATIBILITY, without CENTRALIZE-BINARIES?
Please have a look again at the manual for this function and see if it meets your needs.
Faré may have a different solution based on the DSL. I suspect that something involving :HOME will do the trick --- if you use SBCL, at least, I don't think you want ALL the fasl files relocated; some should stay in /usr/lib...
Also, if you can, please let us know why this didn't emerge from the manual as a possible solution. I'd like to enhance the manual if there's something obvious to be done.
Best, r