Recompiling Python bindings on the Ubuntu 18.04 packages
Recompiling the Python bindings on the CI package generated by the CI does not work:
On Ubuntu 20.04, using packages from release 7.4 rc1:
wget https://www.orfeo-toolbox.org/packages/ci/staging/OTB-7.4.0-Linux64-glibc-2.27.run
chmod +x OTB-7.4.0-Linux64-glibc-2.27.run
./OTB-7.4.0-Linux64-glibc-2.27.run
source otbenv.profile
ctest -S share/otb/swig/build_wrapping.cmake -VV
leads to the following errors:
otbApplicationPYTHON_wrap.cxx:(.text+0x222f): undefined reference to `otb::Wrapper::Application::SetParameterImageBase(std::string const&, itk::ImageBase<2u>*, unsigned int)'
/usr/bin/ld: CMakeFiles/PythonWrapperLib.dir/otbApplicationPYTHON_wrap.cxx.o: in function `Application_SetImageFromUInt32NumpyArray_(otb::Wrapper::Application*, std::string, int, unsigned int*, int, int, int)':
otbApplicationPYTHON_wrap.cxx:(.text+0x25ef): undefined reference to `otb::Wrapper::Application::SetParameterImageBase(std::string const&, itk::ImageBase<2u>*, unsigned int)'
/usr/bin/ld: CMakeFiles/PythonWrapperLib.dir/otbApplicationPYTHON_wrap.cxx.o: in function `Application_SetImageFromInt32NumpyArray_(otb::Wrapper::Application*, std::string, int, int*, int, int, int)':
otbApplicationPYTHON_wrap.cxx:(.text+0x29af): undefined reference to `otb::Wrapper::Application::SetParameterImageBase(std::string const&, itk::ImageBase<2u>*, unsigned int)'
/usr/bin/ld: CMakeFiles/PythonWrapperLib.dir/otbApplicationPYTHON_wrap.cxx.o: in function `Application_SetImageFromUInt16NumpyArray_(otb::Wrapper::Application*, std::string, int, unsigned short*, int, int, int)':
otbApplicationPYTHON_wrap.cxx:(.text+0x2d6f): undefined reference to `otb::Wrapper::Application::SetParameterImageBase(std::string const&, itk::ImageBase<2u>*, unsigned int)'
/usr/bin/ld: CMakeFiles/PythonWrapperLib.dir/otbApplicationPYTHON_wrap.cxx.o: in function `Application_SetImageFromCDoubleNumpyArray_(otb::Wrapper::Application*, std::string, int, std::complex<double>*, int, int, int)':
otbApplicationPYTHON_wrap.cxx:(.text+0x312f): undefined reference to `otb::Wrapper::Application::SetParameterImageBase(std::string const&, itk::ImageBase<2u>*, unsigned int)'
/usr/bin/ld: CMakeFiles/PythonWrapperLib.dir/otbApplicationPYTHON_wrap.cxx.o:otbApplicationPYTHON_wrap.cxx:(.text+0x34ef): more undefined references to `otb::Wrapper::Application::SetParameterImageBase(std::string const&, itk::ImageBase<2u>*, unsigned int)' follow
/usr/bin/ld: CMakeFiles/PythonWrapperLib.dir/otbApplicationPYTHON_wrap.cxx.o: in function `Application_GetVectorImageAsCDoubleNumpyArray_(otb::Wrapper::Application*, std::string, std::complex<double>**, int*, int*, int*)':
[...]
Note that he Python bindings recompilation works on the Centos 7 package, which is the one that is deployed.