[Debian-med-packaging] Bug#821011: orthanc: FTBFS on powerpc/ppc64el: error: #error Support your plateform here

Sébastien Jodogne s.jodogne at chu.ulg.ac.be
Thu Apr 14 15:37:39 UTC 2016


Hello,

Thanks for reporting this issue. Here is the problematic excerpt in the code:

#if defined(_WIN32)
#include <windows.h>
#elif defined(__linux) || defined(__FreeBSD_kernel__) || defined(__APPLE__) || defined(__FreeBSD__)
#include <pthread.h>
#else
#error Support your platform here
#endif

The problem is visibly that the macro "__linux" is not defined anymore as it used to be, maybe because of an update of gcc. 

Reading the new version of the "Pre-defined Compiler Macros" [1], I see that "__linux" is now tagged as obsolete and should be replaced by "__linux__". The patch has just been submitted to the upstream repository [2].

However, I have no access to a ppc/ppc64el computer, so I cannot check by myself whether the patch actually solves this Debian bug. Could someone help by testing the patch, or by giving me access to a test computer?

Regards,
Sébastien-


[1] https://sourceforge.net/p/predef/wiki/OperatingSystems/
[2] https://bitbucket.org/sjodogne/orthanc/commits/325772dadcd6fb55469392041869d703008e276a



> Dear maintainer,
> 
> your package failed to build on ppc/ppc64el.
> 
> This is a regression compared to 1.0.0+dfsg-2, even if reading the
> changelog doesn't help me understanding what went wrong.
> 
> Also, this is blocking the libpng transition as the version
> 1.0.0+dfsg-2+b1 (the successful binNMU done for the transition) didn't
> migrate to testing before this upload.
> 
> From the ppc64el build: [...]
> [ 26%] Building CXX object
> CMakeFiles/CoreLibrary.dir/Core/MultiThreading/Mutex.cpp.o
> /usr/bin/c++   -DBOOST_FILESYSTEM_VERSION=3 -DBOOST_HAS_DATE_TIME=1
> -DBOOST_HAS_FILESYSTEM_V3=1 -DBOOST_HAS_LOCALE=1 -DBOOST_HAS_REGEX=1
> -DDCMTK_DICTIONARY_DIR=\"/usr/share/libdcmtk5\"
> -DDCMTK_USE_EMBEDDED_DICTIONARIES=0 -DDCMTK_VERSION_NUMBER=361
> -DHAVE_CONFIG_H=1 -DMODALITY_WORKLISTS_VERSION=\"1.0.0\"
> -DMONGOOSE_USE_CALLBACKS=1 -DNO_SSL_DL=1 -DORTHANC_BUILD_UNIT_TESTS=1
> -DORTHANC_DATABASE_VERSION=6 -DORTHANC_ENABLE_LOGGING=1
> -DORTHANC_JPEG_ENABLED=1 -DORTHANC_JPEG_LOSSLESS_ENABLED=1
> -DORTHANC_MAXIMUM_TAG_LENGTH=256 -DORTHANC_PLUGINS_ENABLED=1
> -DORTHANC_PUGIXML_ENABLED=1 -DORTHANC_SSL_ENABLED=1 -DORTHANC_STANDALONE=1
> -DORTHANC_STATIC=0 -DORTHANC_VERSION=\"1.0.0\"
> -DSERVE_FOLDERS_VERSION=\"1.0.0\" -DUNIT_TESTS_WITH_HTTP_CONNEXIONS=0
> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1
> -I/«BUILDDIR»/orthanc-1.0.0+dfsg/Build/AUTOGENERATED -I/usr/include/jsoncpp
> -I/usr/include/lua5.1 -I/«BUILDDIR»/orthanc-1.0.0+dfsg/Build/mongoose
> -I/usr/include/dcmtk/config -I/usr/include/dcmtk/ofstd
> -I/usr/include/dcmtk/oflog -I/usr/include/dcmtk/dcmdata
> -I/usr/include/dcmtk/dcmimgle -I/usr/include/dcmtk/dcmimage
> -I/usr/include/dcmtk/dcmjpeg -I/usr/include/dcmtk/dcmjpls
> -I/usr/include/dcmtk/dcmtls -I/usr/include/dcmtk/dcmnet
> -I/usr/include/dcmtk/dcmsr -I/usr/include/dcmtk/dcmsign
> -I/usr/include/dcmtk/dcmwlm -I/usr/include/dcmtk/dcmqrdb
> -I/usr/include/dcmtk/dcmpstat -I/usr/include/dcmtk/dcmrt
> -I/usr/include/dcmtk/dcmiod -I/usr/include/dcmtk/dcmfg
> -I/usr/include/dcmtk/dcmseg -I/usr/src/gtest
> -I/«BUILDDIR»/orthanc-1.0.0+dfsg/Plugins/Include  -g -O2 -fPIE
> -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time
> -D_FORTIFY_SOURCE=2  -Wall -pedantic -Wno-long-long -Wno-variadic-macros
> -std=c++11 -Wno-deprecated-declarations   -o
> CMakeFiles/CoreLibrary.dir/Core/MultiThreading/Mutex.cpp.o -c
> /«BUILDDIR»/orthanc-1.0.0+dfsg/Core/MultiThreading/Mutex.cpp
> /«BUILDDIR»/orthanc-1.0.0+dfsg/Core/MultiThreading/Mutex.cpp:43:2: error:
> #error Support your platform here
>  #error Support your platform here
>   ^
> /«BUILDDIR»/orthanc-1.0.0+dfsg/Core/MultiThreading/Mutex.cpp:119:2: error:
> #error Support your plateform here
>  #error Support your plateform here
>   ^



More information about the Debian-med-packaging mailing list