Bug 2447825 - Undefined symbols in libpdalcpp.so
Summary: Undefined symbols in libpdalcpp.so
Keywords:
Status: NEW
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: PDAL
Version: epel10
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: markusN
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2419727
TreeView+ depends on / blocked
 
Reported: 2026-03-16 00:54 UTC by Orion Poplawski
Modified: 2026-03-17 15:09 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Orion Poplawski 2026-03-16 00:54:48 UTC
Description of problem:

$ rpmlint -i PDAL-libs

PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdal_plugin_kernel_fauxplugin.so.18.0.0 GTIFSetFromOGISDefn        (/lib64/libpdalcpp.so.18)
PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdal_plugin_kernel_fauxplugin.so.18.0.0 GTIFGetOGISDefn    (/lib64/libpdalcpp.so.18)
PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdal_plugin_reader_pgpointcloud.so.18.0.0 GTIFSetFromOGISDefn      (/lib64/libpdalcpp.so.18)
PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdal_plugin_reader_pgpointcloud.so.18.0.0 GTIFGetOGISDefn  (/lib64/libpdalcpp.so.18)
PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdal_plugin_writer_pgpointcloud.so.18.0.0 GTIFSetFromOGISDefn      (/lib64/libpdalcpp.so.18)
PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdal_plugin_writer_pgpointcloud.so.18.0.0 GTIFGetOGISDefn  (/lib64/libpdalcpp.so.18)
PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdalcpp.so.18.0.0 GTIFSetFromOGISDefn      (/usr/lib64/libpdalcpp.so.18.0.0)
PDAL-libs.x86_64: E: undefined-non-weak-symbol /usr/lib64/libpdalcpp.so.18.0.0 GTIFGetOGISDefn  (/usr/lib64/libpdalcpp.so.18.0.0)

Version-Release number of selected component (if applicable):
PDAL-libs-2.8.3-1.el10_0.x86_64

This breaks the build of vtk:

[ 94%] Linking CXX executable ../../../../bin/vtkIOPDALCxxTests
cd /builddir/build/BUILD/VTK-9.6.0/redhat-linux-build-serial/IO/PDAL/Testing/Cxx && /usr/bin/cmake -E cmake_link_script CMakeFiles/vtkIOPDALCxxTests.dir/link.txt --verbose=1
/usr/bin/g++ -O2  -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS 
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64 -march=x86-64-v3 -mtune=generic -fasynchronous-unwind-tables 
-fstack-clash-protection -fcf-protection -mtls-dialect=gnu2   -D_UNICODE -DHAVE_UINTPTR_T  -g  -Wl,-lc  -Wl,-lc -Wl,-z,relro -Wl,--as-needed  -Wl,-z,pack-relative-relocs -Wl,-z,now -spe
cs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -Wl,--build-id=sha1 -specs=/usr/lib/rpm/red
hat/redhat-package-notes  -Wl,--dependency-file=CMakeFiles/vtkIOPDALCxxTests.dir/link.d CMakeFiles/vtkIOPDALCxxTests.dir/vtkIOPDALCxxTests.cxx.o CMakeFiles/vtkIOPDALCxxTests.dir/TestPDA
LReader_test_1.cxx.o CMakeFiles/vtkIOPDALCxxTests.dir/TestPDALReader_test_2.cxx.o CMakeFiles/vtkIOPDALCxxTests.dir/TestPDALReaderWithOffset.cxx.o -o ../../../../bin/vtkIOPDALCxxTests  -
Wl,-rpath,/builddir/build/BUILD/VTK-9.6.0/redhat-linux-build-serial/lib64 ../../../../lib64/libvtkIOPDAL.so.1 ../../../../lib64/libvtkInteractionStyle.so.1 ../../../../lib64/libvtkRende
ringOpenGL2.so.1 ../../../../lib64/libvtkTestingRendering.so.1 ../../../../lib64/libvtkRenderingHyperTreeGrid.so.1 ../../../../lib64/libvtkRenderingUI.so.1 ../../../../lib64/libvtkglad.
so.1 ../../../../lib64/libvtkx11.so.1 ../../../../lib64/libvtkTestingCore.so.1 ../../../../lib64/libvtkRenderingCore.so.1 ../../../../lib64/libvtkFiltersGeneral.so.1 ../../../../lib64/l
ibvtkIOImage.so.1 ../../../../lib64/libvtkImagingColor.so.1 ../../../../lib64/libvtkIOXML.so.1 ../../../../lib64/libvtkIOXMLParser.so.1 ../../../../lib64/libvtkImagingCore.so.1 ../../..
/../lib64/libvtkIOCore.so.1 ../../../../lib64/libvtkFiltersCore.so.1 ../../../../lib64/libvtkCommonExecutionModel.so.1 ../../../../lib64/libvtkCommonDataModel.so.1 ../../../../lib64/lib
vtkCommonMisc.so.1 ../../../../lib64/libvtkCommonTransforms.so.1 ../../../../lib64/libvtkCommonMath.so.1 ../../../../lib64/libvtkCommonCore.so.1 ../../../../lib64/libvtksys.so.1 -ldl /u
sr/lib64/libfmt.so.11.0.2 ../../../../lib64/libvtkscn.so.1 ../../../../lib64/libvtktoken.so.1 ../../../../lib64/libvtkkissfft.so.1 -Wl,-rpath-link,/builddir/build/BUILD/VTK-9.6.0/redhat
-linux-build-serial/lib64
gmake[2]: Leaving directory '/builddir/build/BUILD/VTK-9.6.0/redhat-linux-build-serial'
/usr/bin/ld: /usr/lib64/libpdalcpp.so.18: undefined reference to `GTIFSetFromOGISDefn'
/usr/bin/ld: /usr/lib64/libpdalcpp.so.18: undefined reference to `GTIFGetOGISDefn'
collect2: error: ld returned 1 exit status
gmake[2]: *** [IO/PDAL/Testing/Cxx/CMakeFiles/vtkIOPDALCxxTests.dir/build.make:181: bin/vtkIOPDALCxxTests] Error 1

Comment 1 Orion Poplawski 2026-03-16 01:27:46 UTC
PDAL-2.8.3-build/PDAL-2.8.3-src/io/private/las/Geotiff.cpp has the following delcarations:

// These functions are available from GDAL, but they aren't provided in a header file.
char PDAL_DLL * GTIFGetOGISDefn(GTIF*, GTIFDefn*);
int PDAL_DLL GTIFSetFromOGISDefn(GTIF*, const char*);

but I don't see those functions defined anywhere else in the PDAL source.

Comment 2 markusN 2026-03-16 16:28:28 UTC
Is GDAL already linked during the VTK compilation? It contains the GeoTIFF (internal) driver:

https://github.com/search?q=repo%3AOSGeo%2Fgdal%20GTIFGetOGISDefn&type=code

Comment 3 Orion Poplawski 2026-03-16 23:47:25 UTC
It's really irrelevant.  There are undefined symbols in the pdal libraries and there shouldn't be.

Comment 4 markusN 2026-03-17 12:37:41 UTC
Okay. I have created an upstream issue: https://github.com/PDAL/PDAL/issues/4984

Comment 5 Orion Poplawski 2026-03-17 14:19:33 UTC
I'll note that the issue is not present in rawhide - so it was resolved at some point or is a difference in link flags.

Comment 6 markusN 2026-03-17 14:39:33 UTC
There are answers/questions from upstream in https://github.com/PDAL/PDAL/issues/4984 which I am unable to judge. Any suggestion?

Comment 7 markusN 2026-03-17 15:09:47 UTC
abellgithub left a comment (PDAL/PDAL#4984):
> PDAL needs to be linked with GDAL, which contains definitions for the symbols in question.

I guess the same applies to VTK (see above).

hobu left a comment (PDAL/PDAL#4984):
> Does Fedora change how PDAL links things? This has worked forever, although maybe GDAL is no longer exporting these symbols because of a configuration setting?

According to the ChangeLog in PDAL.spec nothing was changed in the package.
The general Fedora compilation flag evolution I cannot judge.


Note You need to log in before you can comment on or make changes to this bug.