It seems I need to inspect my build-environment better.
I built Emacs and the tree-sitter libraries on different hosts without noticing... Building on same host and build completes fine now.
Sorry abut the noise. :)
--
Jostein
Hey everyone.
I'm observing this recent activity on this branch with great enthusiasm.
I've recently been trying Emacs from feature/tree-sitter with tree-sitter enabled, but using third-party major modes (co-developed by me and Theodor Thornhill). So far that has worked out OK for me.
While seeing more and more modes getting tree-sitter support main-lined is great, I'm having trouble just building emacs now, and all major-modes using tree-sitter breaks the build, complaining about missing shared libraries.
The command I'm using to build is:
git clean -fdx && make distclean && ./configure --with-tree-sitter ; make -j6
One example error (but I get these for all modes, until I revert them back to their initial version from git-master):
> textmodes/mhtml-mode.el:29:2: Error: Cannot load language definition: "javascript", ("/home/jostein/.emacs.d/tree-sitter/libtree-sitter-javascript: cannot open shared object file: No such file or directory" "/home/jostein/.emacs.d/tree-sitter/libtree-sitter-javascript.so: cannot open shared object file: No such file or directory" "libtree-sitter-javascript: cannot open shared object file: No such file or directory" "libtree-sitter-javascript.so: cannot open shared object file: No such file or directory")
What I don't get about that error-message is that those files have been built and deployed, using https://github.com/casouri/tree-sitter-module.
jostein@dev-jostein:~/.emacs.d/tree-sitter$ ls -l
total 9828
-rwxrwxr-x 1 jostein jostein 2299312 okt. 10 22:12 libtree-sitter-cpp.so
-rwxrwxr-x 1 jostein jostein 4035232 okt. 10 22:12 libtree-sitter-c-sharp.so
-rwxrwxr-x 1 jostein jostein 400968 okt. 10 22:12 libtree-sitter-c.so
-rwxrwxr-x 1 jostein jostein 78280 okt. 10 22:12 libtree-sitter-css.so
-rwxrwxr-x 1 jostein jostein 241448 okt. 10 22:12 libtree-sitter-go.so
-rwxrwxr-x 1 jostein jostein 165584 okt. 10 22:12 libtree-sitter-html.so
-rwxrwxr-x 1 jostein jostein 353536 okt. 10 22:12 libtree-sitter-javascript.so
-rwxrwxr-x 1 jostein jostein 15904 okt. 10 22:12 libtree-sitter-json.so
-rwxrwxr-x 1 jostein jostein 446224 okt. 10 22:12 libtree-sitter-python.so
-rwxrwxr-x 1 jostein jostein 934912 okt. 10 22:12 libtree-sitter-rust.so
-rwxrwxr-x 1 jostein jostein 1070296 mai 9 12:14 libtree-sitter-tsx.so
So what am I doing wrong? How should I build this?
Any help would be appreciated. If I can build it, I can help test-drive and possible also provide patches, but for now I'm stuck.
--
Jostein
On 10.10.2022 19:05, Theodor Thornhill wrote:
My bad, I thought Theodor was saying he would add separate major modes alongside non-tree-sitter major modes for the same language. Reading his message I think he is only adding the tree-sitter powered mode into core and leaving the non-tree-sitter version out. So IIUC we will have (a) major modes that supports both tree-sitter and non-tree-sitter, and (b) major modes that require tree-sitter to work. Again, a M-x treesit-enable in a mode that requires tree-sitter to work doesn’t make much sense. I think having individual major-mode level toggle variables and a global toggle variable is conceptually more fit?Agreed!--
Vennlig hilsen
Jostein Kjønigsen
jostein@kjonigsen.net 🍵 jostein@gmail.com
https://jostein.kjønigsen.no