Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libgrass_imagery: missing SONAME #2268

Closed
t0b3 opened this issue Mar 18, 2022 · 1 comment · Fixed by #2269
Closed

libgrass_imagery: missing SONAME #2268

t0b3 opened this issue Mar 18, 2022 · 1 comment · Fixed by #2269
Labels
bug Something isn't working

Comments

@t0b3
Copy link
Contributor

t0b3 commented Mar 18, 2022

bisecting revealed since introduction of this line

include $(MODULE_TOPDIR)/include/Make/Grass.make
by 0e109f6 the library libgrass_imagery.8.0.so has no SONAME anymore.

i.e. objdump -p ./dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.8.0.so | grep SONAME should not be empty but something like SONAME libgrass_imagery.8.0.so

this missing SONAME leads to

thanks for reworking this Makefile 😄

@t0b3
Copy link
Contributor Author

t0b3 commented Mar 18, 2022

@marisn @veroandreo any idea how to improve this situation?

t0b3 added a commit to t0b3/grass that referenced this issue Mar 18, 2022
@nilason nilason added the bug Something isn't working label Mar 18, 2022
t0b3 added a commit to t0b3/grass that referenced this issue Mar 18, 2022
neteler pushed a commit that referenced this issue Mar 23, 2022
* Update lib/imagery/Makefile: fix SONAME missing

Fixes #2268

Co-authored-by: Nicklas Larsson <n_larsson@yahoo.com>
neteler pushed a commit that referenced this issue Mar 23, 2022
* Update lib/imagery/Makefile: fix SONAME missing

Fixes #2268

Co-authored-by: Nicklas Larsson <n_larsson@yahoo.com>
neteler added a commit that referenced this issue May 9, 2022
The change implemented in #2269 actually didn't fix the SONAME problem (see issue #2268), at least on Fedora:

```
# status after PR 2269:
readelf -d /usr/lib64/grass80/lib/libgrass_imagery.so

Dynamic section at offset 0x16860 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib64/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x11e8c
 0x0000000000000019 (INIT_ARRAY)         0x17848
...
```

==> The SONAME is still missing which means that #2269 did not solve it (tested on Fedora).

With this PR (see e.g. also `lib/display/Makefile`) the SONAME appears:

```
readelf -d /home/mneteler/software/grass80/dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.so

Dynamic section at offset 0x14db8 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libgrass_imagery.8.0.so]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x10864
 0x0000000000000019 (INIT_ARRAY)         0x15da0
...
```

which is a requirement to compile, install and run the GDAL-GRASS driver (https://github.com/OSGeo/gdal-grass).
neteler added a commit that referenced this issue May 9, 2022
The change implemented in #2269 actually didn't fix the SONAME problem (see issue #2268), at least on Fedora:

```
# status after PR 2269:
readelf -d /usr/lib64/grass80/lib/libgrass_imagery.so

Dynamic section at offset 0x16860 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib64/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x11e8c
 0x0000000000000019 (INIT_ARRAY)         0x17848
...
```

==> The SONAME is still missing which means that #2269 did not solve it (tested on Fedora).

With this PR (see e.g. also `lib/display/Makefile`) the SONAME appears:

```
readelf -d /home/mneteler/software/grass80/dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.so

Dynamic section at offset 0x14db8 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libgrass_imagery.8.0.so]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x10864
 0x0000000000000019 (INIT_ARRAY)         0x15da0
...
```

which is a requirement to compile, install and run the GDAL-GRASS driver (https://github.com/OSGeo/gdal-grass).
neteler added a commit that referenced this issue May 9, 2022
The change implemented in #2269 actually didn't fix the SONAME problem (see issue #2268), at least on Fedora:

```
# status after PR 2269:
readelf -d /usr/lib64/grass80/lib/libgrass_imagery.so

Dynamic section at offset 0x16860 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib64/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x11e8c
 0x0000000000000019 (INIT_ARRAY)         0x17848
...
```

==> The SONAME is still missing which means that #2269 did not solve it (tested on Fedora).

With this PR (see e.g. also `lib/display/Makefile`) the SONAME appears:

```
readelf -d /home/mneteler/software/grass80/dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.so

Dynamic section at offset 0x14db8 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libgrass_imagery.8.0.so]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x10864
 0x0000000000000019 (INIT_ARRAY)         0x15da0
...
```

which is a requirement to compile, install and run the GDAL-GRASS driver (https://github.com/OSGeo/gdal-grass).
neteler added a commit that referenced this issue May 9, 2022
The change implemented in #2269 actually didn't fix the SONAME problem (see issue #2268), at least on Fedora:

```
# status after PR 2269:
readelf -d /usr/lib64/grass80/lib/libgrass_imagery.so

Dynamic section at offset 0x16860 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib64/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x11e8c
 0x0000000000000019 (INIT_ARRAY)         0x17848
...
```

==> The SONAME is still missing which means that #2269 did not solve it (tested on Fedora).

With this PR (see e.g. also `lib/display/Makefile`) the SONAME appears:

```
readelf -d /home/mneteler/software/grass80/dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.so

Dynamic section at offset 0x14db8 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libgrass_imagery.8.0.so]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x10864
 0x0000000000000019 (INIT_ARRAY)         0x15da0
...
```

which is a requirement to compile, install and run the GDAL-GRASS driver (https://github.com/OSGeo/gdal-grass).
ninsbl pushed a commit to ninsbl/grass that referenced this issue Oct 26, 2022
* Update lib/imagery/Makefile: fix SONAME missing

Fixes OSGeo#2268

Co-authored-by: Nicklas Larsson <n_larsson@yahoo.com>
ninsbl pushed a commit to ninsbl/grass that referenced this issue Oct 26, 2022
The change implemented in OSGeo#2269 actually didn't fix the SONAME problem (see issue OSGeo#2268), at least on Fedora:

```
# status after PR 2269:
readelf -d /usr/lib64/grass80/lib/libgrass_imagery.so

Dynamic section at offset 0x16860 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib64/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x11e8c
 0x0000000000000019 (INIT_ARRAY)         0x17848
...
```

==> The SONAME is still missing which means that OSGeo#2269 did not solve it (tested on Fedora).

With this PR (see e.g. also `lib/display/Makefile`) the SONAME appears:

```
readelf -d /home/mneteler/software/grass80/dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.so

Dynamic section at offset 0x14db8 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libgrass_imagery.8.0.so]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x10864
 0x0000000000000019 (INIT_ARRAY)         0x15da0
...
```

which is a requirement to compile, install and run the GDAL-GRASS driver (https://github.com/OSGeo/gdal-grass).
ninsbl pushed a commit to ninsbl/grass that referenced this issue Feb 17, 2023
* Update lib/imagery/Makefile: fix SONAME missing

Fixes OSGeo#2268

Co-authored-by: Nicklas Larsson <n_larsson@yahoo.com>
ninsbl pushed a commit to ninsbl/grass that referenced this issue Feb 17, 2023
The change implemented in OSGeo#2269 actually didn't fix the SONAME problem (see issue OSGeo#2268), at least on Fedora:

```
# status after PR 2269:
readelf -d /usr/lib64/grass80/lib/libgrass_imagery.so

Dynamic section at offset 0x16860 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib64/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x11e8c
 0x0000000000000019 (INIT_ARRAY)         0x17848
...
```

==> The SONAME is still missing which means that OSGeo#2269 did not solve it (tested on Fedora).

With this PR (see e.g. also `lib/display/Makefile`) the SONAME appears:

```
readelf -d /home/mneteler/software/grass80/dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.so

Dynamic section at offset 0x14db8 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libgrass_imagery.8.0.so]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x10864
 0x0000000000000019 (INIT_ARRAY)         0x15da0
...
```

which is a requirement to compile, install and run the GDAL-GRASS driver (https://github.com/OSGeo/gdal-grass).
neteler pushed a commit to nilason/grass that referenced this issue Nov 7, 2023
* Update lib/imagery/Makefile: fix SONAME missing

Fixes OSGeo#2268

Co-authored-by: Nicklas Larsson <n_larsson@yahoo.com>
neteler added a commit to nilason/grass that referenced this issue Nov 7, 2023
The change implemented in OSGeo#2269 actually didn't fix the SONAME problem (see issue OSGeo#2268), at least on Fedora:

```
# status after PR 2269:
readelf -d /usr/lib64/grass80/lib/libgrass_imagery.so

Dynamic section at offset 0x16860 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/lib64/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x11e8c
 0x0000000000000019 (INIT_ARRAY)         0x17848
...
```

==> The SONAME is still missing which means that OSGeo#2269 did not solve it (tested on Fedora).

With this PR (see e.g. also `lib/display/Makefile`) the SONAME appears:

```
readelf -d /home/mneteler/software/grass80/dist.x86_64-pc-linux-gnu/lib/libgrass_imagery.so

Dynamic section at offset 0x14db8 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_gis.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_raster.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgrass_vector.8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libgrass_imagery.8.0.so]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/grass80/lib]
 0x000000000000000c (INIT)               0x5000
 0x000000000000000d (FINI)               0x10864
 0x0000000000000019 (INIT_ARRAY)         0x15da0
...
```

which is a requirement to compile, install and run the GDAL-GRASS driver (https://github.com/OSGeo/gdal-grass).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants