Hi Ben, according to manual "ldd prints the shared objects (shared libraries) required by each program or shared object specified on the command line." In my reading not only directly linked objects, but cascading dependencies, are listed too.
On mac I can do: otool -L bin/r.surf.area bin/r.surf.area: @rpath/libgrass_raster.7.9.dylib (compatibility version 7.9.0, current version 7.9.0) @rpath/libgrass_gis.7.9.dylib (compatibility version 7.9.0, current version 7.9.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1281.100.1) which shows only two grass libs linked. You may also try: objdump -p bin/r.surf.area which perhaps give a different result. Nicklas On Monday, 1 March 2021, 14:46:05 CET, Benjamin Ducke <bendu...@fastmail.fm> wrote: Dear Devs: $ ldd r.surf.area .. produces the list of linked libraries below. AFAICT, this includes GDAL/OGR and all of their dependencies. Should it not be enough for "r.surf.area" [insert any other r.*/v.* module here] to link against the GRASS libs (plus a handful of essential system runtime libs)? Best, Ben --- linux-vdso.so.1 libgrass_raster.7.8.so => /opt/grass/lib/libgrass_raster.7.8.so libgrass_gis.7.8.so => /opt/grass/lib/libgrass_gis.7.8.so libm.so.6 => /usr/lib/libm.so.6 libc.so.6 => /usr/lib/libc.so.6 libgrass_gproj.7.8.so => /opt/grass/lib/libgrass_gproj.7.8.so libdl.so.2 => /usr/lib/libdl.so.2 libgrass_datetime.7.8.so => /opt/grass/lib/libgrass_datetime.7.8.so libz.so.1 => /usr/lib/libz.so.1 libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 libzstd.so.1 => /usr/lib/libzstd.so.1 libpthread.so.0 => /usr/lib/libpthread.so.0 libgdal.so.26 => /usr/lib/libgdal.so.26 libproj.so.15 => /usr/lib/libproj.so.15 libcrypto.so.1.1 => /usr/lib/libcrypto.so.1.1 libpoppler.so.107 => /usr/lib/libpoppler.so.107 libjson-c.so.5 => /usr/lib/libjson-c.so.5 libfreexl.so.1 => /usr/lib/libfreexl.so.1 libgeos_c.so.1 => /usr/lib/libgeos_c.so.1 libexpat.so.1 => /usr/lib/libexpat.so.1 libxerces-c-3.2.so => /usr/lib/libxerces-c-3.2.so libopenjp2.so.7 => /usr/lib/libopenjp2.so.7 libnetcdf.so.18 => /usr/lib/libnetcdf.so.18 libhdf5.so.200 => /usr/lib/libhdf5.so.200 libgif.so.7 => /usr/lib/libgif.so.7 libjpeg.so.8 => /usr/lib/libjpeg.so.8 libgeotiff.so.5 => /usr/lib/libgeotiff.so.5 libtiff.so.5 => /usr/lib/libtiff.so.5 libpng16.so.16 => /usr/lib/libpng16.so.16 libcfitsio.so.9 => /usr/lib/libcfitsio.so.9 libpq.so.5 => /usr/lib/libpq.so.5 librt.so.1 => /usr/lib/librt.so.1 libspatialite.so.7 => /usr/lib/libspatialite.so.7 libsqlite3.so.0 => /usr/lib/libsqlite3.so.0 libpcre.so.1 => /usr/lib/libpcre.so.1 libcurl.so.4 => /usr/lib/libcurl.so.4 libxml2.so.2 => /usr/lib/libxml2.so.2 liblzma.so.5 => /usr/lib/liblzma.so.5 libicui18n.so.68 => /usr/lib/libicui18n.so.68 libicuuc.so.68 => /usr/lib/libicuuc.so.68 libicudata.so.68 => /usr/lib/libicudata.so.68 libmariadb.so.3 => /usr/lib/libmariadb.so.3 libstdc++.so.6 => /usr/lib/libstdc++.so.6 libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 libfreetype.so.6 => /usr/lib/libfreetype.so.6 libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 liblcms2.so.2 => /usr/lib/liblcms2.so.2 libsmime3.so => /usr/lib/libsmime3.so libnss3.so => /usr/lib/libnss3.so libplc4.so => /usr/lib/libplc4.so libnspr4.so => /usr/lib/libnspr4.so libgeos-3.8.1.so => /usr/lib/libgeos-3.8.1.so libnsl.so.2 => /usr/lib/libnsl.so.2 libhdf5_hl.so.200 => /usr/lib/libhdf5_hl.so.200 libsz.so.2 => /usr/lib/libsz.so.2 libmpi.so.40 => /usr/lib/openmpi/libmpi.so.40 libssl.so.1.1 => /usr/lib/libssl.so.1.1 libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 libldap_r-2.4.so.2 => /usr/lib/libldap_r-2.4.so.2 libnghttp2.so.14 => /usr/lib/libnghttp2.so.14 libidn2.so.0 => /usr/lib/libidn2.so.0 libssh2.so.1 => /usr/lib/libssh2.so.1 libpsl.so.5 => /usr/lib/libpsl.so.5 libkrb5.so.3 => /usr/lib/libkrb5.so.3 libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 libcom_err.so.2 => /usr/lib/libcom_err.so.2 libharfbuzz.so.0 => /usr/lib/libharfbuzz.so.0 libnssutil3.so => /usr/lib/libnssutil3.so libplds4.so => /usr/lib/libplds4.so libtirpc.so.3 => /usr/lib/libtirpc.so.3 libaec.so.0 => /usr/lib/libaec.so.0 libopen-rte.so.40 => /usr/lib/openmpi/libopen-rte.so.40 libopen-pal.so.40 => /usr/lib/openmpi/libopen-pal.so.40 libutil.so.1 => /usr/lib/libutil.so.1 libhwloc.so.15 => /usr/lib/libhwloc.so.15 libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 libkeyutils.so.1 => /usr/lib/libkeyutils.so.1 libresolv.so.2 => /usr/lib/libresolv.so.2 liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2 libsasl2.so.3 => /usr/lib/libsasl2.so.3 libunistring.so.2 => /usr/lib/libunistring.so.2 libgraphite2.so.3 => /usr/lib/libgraphite2.so.3 libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 libudev.so.1 => /usr/lib/libudev.so.1 _______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-dev
_______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-dev