Open commander-trashdin opened 4 years ago
Okay, completely deleting everything quicklisp loads and just loading it from here works.
Although now I get (after pressing s) this:
Code ERROR: no such table: documents.
Database: /home/aun/quicklisp/local-projects/sucle-master/temp/files/new.db
SQL: SELECT EXISTS(SELECT 1 FROM documents WHERE filename = ? LIMIT 1)
[Condition of type SQLITE:SQLITE-ERROR]
Restarts:
0: [ABORT] abort thread (#<THREAD "Anonymous thread" RUNNING {1006964FF3}>)
Hi thrashdin! Sorry that you have had so much trouble even trying to load sucle. The installation process should not be as hard as it is, the installation process is truly a disaster.
Currently, sucle is in a state of massive churn, but because quicklisp only updates once a month, new updates and fixes are not pushed immediately to quicklisp.
This commit, https://github.com/gregcman/sucle/commit/bc7b076df206efbd2e182711a3ab694a4772e242 on the development branch ensures that there is a correct place to store the world, which should correct the error.
The correct installation process for sucle also needs to be written down, INSTALL.md
needs to updated, and there needs to be exhaustive tests across different platforms. Also, there needs to be a versioning system, so that changes pushed to quicklisp are coherent and not in a half-baked state.
Thank you for reporting your experience with this and taking the time to write down the error! It must be really frustrating and sad that even after a year this is not fixed.
Wait, but this commit is already made, right? I am having this error on the most recent version.
No, the commit has not been made to the master
branch yet, it is only on the development
branch. I get the same error as you on the master
branch:
Could not prepare an sqlite statement.
Code ERROR: no such table: documents.
Database: /home/imac/quicklisp/local-projects/symmetrical-umbrella/temp/files/new.db
SQL: SELECT EXISTS(SELECT 1 FROM documents WHERE filename = ? LIMIT 1)
[Condition of type SQLITE:SQLITE-ERROR]
Restarts:
0: [ABORT] abort thread (#<THREAD "Anonymous thread" RUNNING {10033C4D83}>)
Backtrace:
0: (SQLITE:SQLITE-ERROR :ERROR "Could not prepare an sqlite statement." :STATEMENT NIL :DB-HANDLE #<SQLITE:SQLITE-HANDLE {1002A5E933}> :SQL-TEXT "SELECT EXISTS(SELECT 1 FROM documents WHERE filename = ? ..
1: ((:METHOD INITIALIZE-INSTANCE :AFTER (SQLITE:SQLITE-STATEMENT)) #<SQLITE:SQLITE-STATEMENT {1002C36593}>) [fast-method]
2: ((LAMBDA (SB-PCL::|.P0.| SB-PCL::|.P1.|)) #<unavailable argument> #<unavailable argument>)
3: (SQLITE:PREPARE-STATEMENT #<SQLITE:SQLITE-HANDLE {1002A5E933}> "SELECT EXISTS(SELECT 1 FROM documents WHERE filename = ? LIMIT 1)")
4: (SQLITE:EXECUTE-SINGLE #<SQLITE:SQLITE-HANDLE {1002A5E933}> "SELECT EXISTS(SELECT 1 FROM documents WHERE filename = ? LIMIT 1)" "(80 80 80)")
5: (SQLITE:EXECUTE-SINGLE #<SQLITE:SQLITE-HANDLE {1002A5E933}> "SELECT EXISTS(SELECT 1 FROM documents WHERE filename = ? LIMIT 1)" "(80 80 80)") [more]
6: (DATABASE::DOES-FILE-EXIST "(80 80 80)" "documents")
But on the development
branch I can create a world and it works fine.
What you probably have is the master
branch, which does not have the fix yet. Quicklisp does not have the fix yet either.
Here is the development
branch: https://github.com/gregcman/sucle/tree/develop if you want to test out the version with the new fixes.
However, sucle currently does not have a tutorial, so it is very difficult to figure out how to use it. There are currently no good instructions on how to add blocks and other things. Currently I use sucle as a voxel editor and walking game, and Drainful and I are figuring out how to add better physics.
I am not sure, if it is supposed to be like this, but just pressing start does put you into some sort of world, but you cannot just move or look around. Is that right? Am I supposed to do something in repl as well?
I even deleted all the directories to make quicklisp load me a new one.