Closed doggydaddy closed 4 days ago
Hello!
I'm sorry for the mess under Ubuntu 24...
I guess that you followed the instructions at https://github.com/elgw/nd2tool/blob/main/INSTALL.md
and have this problem already during the build process (during linking)? If that does not work I must have forgotten some part of the process.
I took the libtiff.so.5
from my previous Ubuntu 22 install, and the symbols is there:
objdump -TC /usr/lib/x86_64-linux-gnu/libtiff.so.5 | grep TIFFReadRGBATileExt
0000000000033a40 g DF .text 000000000000033c LIBTIFF_4.0 TIFFReadRGBATileExt
but it could be that this is a symbol that isn't present in all builds. Could you see what you get with objdump?
Alternatively I've forgotten some part of the instructions, in that case I'll have to check again with a VM.
For reference, here is what it says on my machine after installation:
lsb_release -dc
No LSB modules are available.
Description: Ubuntu 24.04.1 LTS
Codename: noble
ldd `which nd2tool`
linux-vdso.so.1 (0x00007ffe425b9000)
libnd2readsdk-shared.so => /usr/local/lib/libnd2readsdk-shared.so (0x00007c20776fb000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007c2077612000)
libtiff.so.6 => /lib/x86_64-linux-gnu/libtiff.so.6 (0x00007c2077585000)
libcjson.so.1 => /lib/x86_64-linux-gnu/libcjson.so.1 (0x00007c207757b000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007c2077200000)
liblimfile-shared.so => /usr/local/lib/liblimfile-shared.so (0x00007c2077054000)
libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007c2076c00000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007c207754c000)
/lib64/ld-linux-x86-64.so.2 (0x00007c207773b000)
libwebp.so.7 => /lib/x86_64-linux-gnu/libwebp.so.7 (0x00007c20774d1000)
libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007c2077417000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007c2077022000)
libLerc.so.4 => /lib/x86_64-linux-gnu/libLerc.so.4 (0x00007c2076f9b000)
libjbig.so.0 => /lib/x86_64-linux-gnu/libjbig.so.0 (0x00007c2076f8b000)
libjpeg.so.8 => /lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007c2076f08000)
libdeflate.so.0 => /lib/x86_64-linux-gnu/libdeflate.so.0 (0x00007c2076ef5000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007c2076ed9000)
libtiff.so.5 => /lib/x86_64-linux-gnu/libtiff.so.5 (0x00007c2076b78000)
libsharpyuv.so.0 => /lib/x86_64-linux-gnu/libsharpyuv.so.0 (0x00007c2076ed1000)
Cheers, Erik
Sorry for the late reply, I have been busy with reinstalling a (this) system.
Here is the exact errors I get:
zaioz@albedo:~$ objdump -TC /usr/lib/x86_64-linux-gnu/libtiff.so.5 | grep TIFFReadRGBAStripExt 0000000000039140 g DF .text 00000000000001e2 LIBTIFF_4.1 TIFFReadRGBAStripExt zaioz@albedo:~$ objdump -TC /usr/lib/x86_64-linux-gnu/libtiff.so.5 | grep TIFFReadRGBATileExt 0000000000039340 g DF .text 0000000000000353 LIBTIFF_4.1 TIFFReadRGBATileExt
zaioz@albedo:~/nd2tool/build$ make package
[ 14%] Linking C executable nd2tool
/usr/bin/ld: /home/zaioz/nd2tool/lib/liblimfile-shared.so: undefined reference to TIFFReadRGBAStripExt@LIBTIFF_4.0' /usr/bin/ld: /home/zaioz/nd2tool/lib/liblimfile-shared.so: undefined reference to
TIFFReadRGBATileExt@LIBTIFF_4.0'
collect2: error: ld returned 1 exit status
make[2]: [CMakeFiles/nd2tool.dir/build.make:180: nd2tool] Error 1
make[1]: [CMakeFiles/Makefile2:83: CMakeFiles/nd2tool.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
I have tried several builds, and also symbolic linked libtiff4, but nothing seems to get through, builds successfully, only fails at install.
Hello again,
the image did not go through, but regardless of that I'll try on a virtual machine and keep track on the exact steps that are required. Hang on a day or two!
Cheers, Erik
I just tested in a virtual machine.
This should be all that you need to do to install the older version of libtiff.
wget http://security.ubuntu.com/ubuntu/pool/main/t/tiff/libtiff5_4.3.0-6ubuntu0.10_amd64.deb
ar -x libtiff5_4.3.0-6ubuntu0.10_amd64.deb
tar --zstd -xvf data.tar.zst
sudo cp usr/lib/x86_64-linux-gnu/libtiff.so.* /usr/lib/x86_64-linux-gnu/
The exact steps that were required on a clean install are described in the now updated INSTALL.md file.
Installing on any flavor of ubuntu 24.04 will result in the following linking errors
/usr/bin/ld: /home/zaioz/nd2tool/lib/liblimfile-shared.so: undefined reference to
TIFFReadRGBAStripExt@LIBTIFF_4.0' /usr/bin/ld: /home/zaioz/nd2tool/lib/liblimfile-shared.so: undefined reference to
TIFFReadRGBATileExt@LIBTIFF_4.0'This is with libtiff5 and 4 installed