On 2021-10-16 Bruno Postle <[email protected]> wrote:
> libpano13 is the PanoTools library for panoramic imaging.
[...]
> * General clean-up of the build system, removal of the autotools build system,
> CMake is now the default
[...]
Hello,
afaiu the rc files (resource files) are a windows thingy, i.e. this
should be changed:
8X---------------------------------
--- libpano13-2.9.21~rc1+dfsg.orig/CMakeLists.txt
+++ libpano13-2.9.21~rc1+dfsg/CMakeLists.txt
@@ -284,13 +284,13 @@ ENDIF()
if(NOT WIN32)
# Create and install shared library on non-windows
- add_library(pano13 SHARED ${pano13_hdr} ${pano13_res} ${pano13_src})
+ add_library(pano13 SHARED ${pano13_hdr} ${pano13_src})
target_link_libraries(pano13 ${_common_libs})
set_target_properties(pano13 PROPERTIES VERSION "3.0.0" SOVERSION "3")
install(TARGETS pano13 LIBRARY DESTINATION ${MYLIB} COMPONENT libraries)
set(_pano_target pano13)
#create and install static library
- add_library(pano13a STATIC ${pano13_hdr} ${pano13_res} ${pano13_src})
+ add_library(pano13a STATIC ${pano13_hdr} ${pano13_src})
set_target_properties(pano13a PROPERTIES OUTPUT_NAME pano13)
install(TARGETS pano13a ARCHIVE DESTINATION ${MYLIB} COMPONENT libraries)
else()
8X---------------------------------
I am getting a link error (missing -lm):
8X---------------------------------
cd obj-x86_64-linux-gnu && cmake -DCMAKE_INSTALL_PREFIX=/usr
-DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc
-DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON
-DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF
-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DCMAKE_INSTALL_RUNSTATEDIR=/run
-DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON "-GUnix Makefiles"
-DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu ..
[...]
[ 62%] Linking C shared library libpano13.so
/usr/bin/cmake -E cmake_link_script CMakeFiles/pano13.dir/link.txt --verbose=1
/usr/lib/ccache/cc -fPIC -g -O2
-ffile-prefix-map=/dev/shm/PANO/libpano13-2.9.21=. -fstack-protector-strong
-Wformat -Werror=format-security -Wall -Wdate-time -D_FORTIFY_SOURCE=2
-Wl,-z,relro -Wl,-z,now -Wl,-z,defs -Wl,--as-needed -shared
-Wl,-soname,libpano13.so.3 -o libpano13.so.3.0.0
CMakeFiles/pano13.dir/javastub.c.o CMakeFiles/pano13.dir/adjust.c.o
CMakeFiles/pano13.dir/bmp.c.o CMakeFiles/pano13.dir/ColourBrightness.c.o
CMakeFiles/pano13.dir/correct.c.o CMakeFiles/pano13.dir/dump.c.o
CMakeFiles/pano13.dir/fftn.c.o CMakeFiles/pano13.dir/file.c.o
CMakeFiles/pano13.dir/filter.c.o CMakeFiles/pano13.dir/fourier.c.o
CMakeFiles/pano13.dir/hdrfile.c.o CMakeFiles/pano13.dir/jpeg.c.o
CMakeFiles/pano13.dir/jpegicc.c.o CMakeFiles/pano13.dir/math.c.o
CMakeFiles/pano13.dir/metadata.c.o CMakeFiles/pano13.dir/morpher.c.o
CMakeFiles/pano13.dir/multilayer.c.o CMakeFiles/pano13.dir/optimize.c.o
CMakeFiles/pano13.dir/pan.c.o CMakeFiles/pano13.dir/parser.c.o
CMakeFiles/pano13.dir/perspect.c.o CMakeFiles/pano13.dir/png.c.o
CMakeFiles/pano13.dir/ppm.c.o CMakeFiles/pano13.dir/PTcommon.c.o
CMakeFiles/pano13.dir/PTDialogs.c.o CMakeFiles/pano13.dir/ptfeather.c.o
CMakeFiles/pano13.dir/ptstitch.c.o CMakeFiles/pano13.dir/queryfeature.c.o
CMakeFiles/pano13.dir/remap.c.o CMakeFiles/pano13.dir/resample.c.o
CMakeFiles/pano13.dir/rgbe.c.o CMakeFiles/pano13.dir/seamer.c.o
CMakeFiles/pano13.dir/sys_ansi.c.o CMakeFiles/pano13.dir/sys_compat_unix.c.o
CMakeFiles/pano13.dir/sys_common.c.o CMakeFiles/pano13.dir/tiff.c.o
CMakeFiles/pano13.dir/Triangulate.c.o CMakeFiles/pano13.dir/ZComb.c.o
CMakeFiles/pano13.dir/PaniniGeneral.c.o CMakeFiles/pano13.dir/lmdif.c.o -ltiff
-lz -ljpeg -lpng -lz -ljpeg -lpng
/usr/bin/ld: CMakeFiles/pano13.dir/resample.c.o: in function `Gaussian_2':
./obj-x86_64-linux-gnu/./resample.c:1772: undefined reference to `exp'
/usr/bin/ld: CMakeFiles/pano13.dir/resample.c.o: in function `Gaussian':
./obj-x86_64-linux-gnu/./resample.c:1764: undefined reference to `exp'
8X---------------------------------
which can be fixed with
8X---------------------------------
--- libpano13-2.9.21~rc1+dfsg.orig/CMakeLists.txt
+++ libpano13-2.9.21~rc1+dfsg/CMakeLists.txt
@@ -119,7 +119,7 @@ FIND_PACKAGE(PNG REQUIRED)
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR})
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
-set(_common_libs ${TIFF_LIBRARIES} ${ZLIB_LIBRARIES} ${JPEG_LIBRARIES}
${PNG_LIBRARIES})
+set(_common_libs m ${TIFF_LIBRARIES} ${ZLIB_LIBRARIES} ${JPEG_LIBRARIES}
${PNG_LIBRARIES})
# Sparse or dense Levenberg Marquardt
OPTION(USE_SPARSE_LEVMAR "Use Sparse Levenberg Marquardt algorithm instead of
dense Levenberg Marquardt algorithm" OFF)
8X---------------------------------
The cmake set-up ignores/overrides -DCMAKE_INSTALL_LIBDIR (unless
FIND_LIBRARY_USE_LIB64_PATHS is set). I am not 100% sure about the
proper fix but I suspect dropping the whole MYLIB logic and trusting
modern cmake to do the right thing would work.
cu Andreas
--
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'
--
A list of frequently asked questions is available at:
http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups
"hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/hugin-ptx/YXUBZCdWapqYc27T%40argenau.bebt.de.