Re: [Cocci] coccinelle issues

From: Julia Lawall
Date: Sun Jun 14 2020 - 11:30:32 EST




On Sun, 14 Jun 2020, Randy Dunlap wrote:

> On 6/14/20 12:39 AM, Julia Lawall wrote:
> >
> >
> > On Sat, 13 Jun 2020, Randy Dunlap wrote:
> >
> >> Hi,
> >>
> >> OK, I've not used Coccinelle and now I am trying to use it.
> >> It seems that I am having a few issues.
> >> The primary one is when I run spatch (via 'make coccicheck' in
> >> the kernel source tree), it tells me:
> >>
> >> Python error: No module named coccilib.elems
> >>
> >> I do see "elems.py" in /usr/local/lib64/coccinelle/python/coccilib.
> >>
> >> I am using coccinelle-master downloaded from github on
> >> Friday June 12, 2020.
> >>
> >>
> >> I have also made the following notes while building/installing it.
> >>
> >>
> >> Note1: The latest coccinelle tarball is not actually available
> >> at the coccinelle home page although the kernel documentation says it is.
> >
> > Yes, I'm aware of this problem. We're not able to update the home page at
> > the moment. This problem is being worked on.
> >
> >>
> >> Note2: https://github.com/coccinelle/coccinelle/blob/master/install.txt
> >> says that 'spatch' is a script, but it seems to be a binary executable
> >> file.
> >
> > Actually, it is a script, and the fact that you say it is a binary may be
> > the reason for your python problem. Normally there is a script
> > (scripts/spatch) that make install puts in place that refers back to where
> > your Coccinelle is installed.
>
> Yes, I saw scripts/spatch, but that script is not what is installed in
> /usr/local/bin.
> (see more below)

OK. I don't install Coccinelle in the normal way. I will check on what
is intended.

>
> >> Note3: https://github.com/coccinelle/coccinelle/blob/master/install.txt
> >> probably should say to use 'sudo make install' instead of just
> >> 'make install', just like 'coccinelle.rst' file in the kernel tree says.
> >
> > OK. A lot of documentation for a lot of projects seems to omit the sudo,
> > but I have indeed never understood why.
> >
> > Maybe try again with make distclean, ./autogen, ./configure, sudo make
> > install?
>
> OK, I did all of those.
>
> Is this expected?
>
> $ ./autogen
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory
> cat: VERSION: No such file or directory

Sorry. This problem has no impact, but I just pushed a commit to github
to solve it.

julia

>
>
> spatch is installed in /usr/local/bin/spatch:
>
> $ ll /usr/local/bin/spatch
> -rwxr-xr-x 1 root root 15547736 Jun 14 07:32 /usr/local/bin/spatch*
>
> $ file /usr/local/bin/spatch
> /usr/local/bin/spatch: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, BuildID[sha1]=2b658c12a1a49deae24010b71d22d262988ce041, for GNU/Linux 3.2.0, with debug_info, not stripped
>
>
> I still get this runtime error:
>
> Python error: No module named coccilib.elems
>
> --
> ~Randy
>
>