mirror of
https://github.com/rabbibotton/clog.git
synced 2025-12-15 15:00:24 -08:00
71 lines
1.9 KiB
Markdown
Vendored
71 lines
1.9 KiB
Markdown
Vendored
Using QLOT with CLOG Builder
|
|
|
|
QLOT creates a local quicklisp for your project. The following instructions
|
|
will show you how to take a CLOG project (or any Common Lisp project) and
|
|
convert it for use with qlot.
|
|
|
|
https://github.com/fukamachi/qlot
|
|
|
|
NOTE - qlot does not appear to work with Windows
|
|
|
|
After you have created a CLOG project, copy it to its own projects directory,
|
|
do not use ~/common-lisp or other project directory already in use by your
|
|
global quicklisp install.
|
|
|
|
for this example I created ~/projects and then move my CLOG project qtest to
|
|
~/projects/qtest
|
|
|
|
cd ~/projects/qtest
|
|
|
|
Create a file call qlfile with:
|
|
|
|
```
|
|
dist http://dist.ultralisp.org/
|
|
```
|
|
|
|
(I am using the REPL method for maximum compatability, if you alredy know
|
|
qlot you can use the command line tool if you have installed it.)
|
|
|
|
run sbcl and type:
|
|
|
|
```
|
|
(ql:quickload :qlot)
|
|
(setf qlot:*project-root* (uiop:getcwd))
|
|
(qlot:init (uiop:getcwd))
|
|
(qlot:install)
|
|
```
|
|
|
|
To work on your project using your qlot quicklisp, cd to your dir (example
|
|
~/projects/qtest ) and run
|
|
sbcl with:
|
|
|
|
```
|
|
(ql:quickload :qlot)
|
|
(setf qlot:*project-root* (uiop:getcwd))
|
|
(qlot:init (uiop:getcwd))
|
|
(pushnew (uiop:getcwd) ql:*local-project-directories* :test #'equalp)
|
|
```
|
|
|
|
You are now in your private qlot world for your project, so to run the CLOG
|
|
builder do:
|
|
|
|
```
|
|
(ql:quickload :qtest/tools)
|
|
(clog-tools:clog-builder :project :qtest)
|
|
```
|
|
|
|
To update your local quicklisp use (ql:update-all-dist) or in CLOG Builder
|
|
Options -> Update CLOG Builder
|
|
|
|
If you used qlot and or added directly to the qlfile use (qlot:update :name-of-system)
|
|
|
|
To make things easier create a file say - ql and chmod 775
|
|
```
|
|
sbcl --eval "(ql:quickload :qlot)" \
|
|
--eval "(setf qlot:*project-root* (uiop:getcwd))" \
|
|
--eval "(qlot:init (uiop:getcwd))" \
|
|
--eval "(pushnew (uiop:getcwd) ql:*local-project-directories* :test #'equalp)" \
|
|
--eval "(ql:quickload :qtest/tools)" \
|
|
--eval "(clog-tools:clog-builder :project :qtest)"
|
|
```
|
|
|