vala-lint
vala-lint copied to clipboard
Help: Getting "error while loading shared libraries"
I'm not sure how to install the linter. I just needed a linter for vscode, and it took a while even to figure out the linter was not part of the vscode extension. Here's what I've done so far.
After some digging in this repository, and trying to install it using meson, I found that it should be installed through Docker. (This was not clear, to me, from the README.)
Since vala-lint is intended to be always up-to-date, the recommended usage is the docker image. See the README section for more info https://github.com/elementary/vala-lint#docker-and-continuous-integration
Originally posted by @codygarver in https://github.com/vala-lang/vala-lint/issues/72#issuecomment-493998598
I don't have docker
installed, but I do have podman
and it should be able to handle the basic docker
commands and files. I ran:
$ podman run -v "$PWD":/app valalang/lint:latest
✔ docker.io/valalang/lint:latest
Trying to pull docker.io/valalang/lint:latest...
Getting image source signatures
Copying blob 3a95c2455638 done
Copying blob 4f4fb700ef54 done
Copying blob ba7a43259d3b done
Copying blob 110fdb712cf2 done
Copying config 151b36207c done
Writing manifest to image destination
Storing signatures
No mistakes found
At first, I though "No mistakes found" referred to the installation. However, everytime I try to run the image/container from Podman Desktop, it just ends quickly. I'm starting to believe this is supposed to be used as the command itself. So, being a complete noob on podman
or docker
, I just created a symbolic link to the io.elementary.vala-lint (after digging around in ~/.local/share/containers/overlay
):
$ ln -s /home/vendillah/.local/share/containers/storage/overlay/<a-very-big-hash>/diff/usr/bin/io.elementary.vala-lint io.elementary.vala-lint
Now, regardless of what directory I try to run it from, even in the .../diff/usr/bin
directory running with ./io.elementary.vala-lint
, it always produces the following output:
$ io.elementary.vala-lint
io.elementary.vala-lint: error while loading shared libraries: libvala-linter-1.0.so.1.0.0: cannot open shared object file: No such file or directory
I'm guessing now (or hoping) that "No mistakes found" is the output of the linter that has not received any files and I'm wondering how it can be executed. More specifically, I want it to work with vscode, so it should be part of my $PATH variable. Thanks in advance.