[Debian-med-packaging] Bug#671653: error: 'UINT64_C' was not declared in this scope

Mathieu Malaterre malat at debian.org
Sat May 5 16:11:53 UTC 2012


Source: vxl
Version: 1.14.0-16
Severity: serious

vxl cannot build on kfreebsd because of [1], see [2] for full log. It
looks like on kfreebsd stdint.h is being included before we have time
to #define  __STDC_CONSTANT_MACROS which later on permits to define
UINT64_C. The ISO C99 standard (7.18.4) specifies that C++
implementations should define UINT64_C only when
__STDC_CONSTANT_MACROS is defined.

so the following patch:
http://anonscm.debian.org/viewvc/debian-med/trunk/packages/vxl/trunk/debian/patches/ffmpeg_C99.patch?revision=10706&view=markup

does not guarantee compilation in case of user doing:

#include <stdint.h>
#include <vidl_ffmpeg_convert.h>

Therefore vxl package should unconditionally be build with
-D__STDC_CONSTANT_MACROS as CXXFLAGS.

-M

[1]
cd /build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/obj-x86_64-kfreebsd-gnu/core/vidl/tests
&& /usr/bin/c++   -DVXL_WARN_DEPRECATED -DVXL_WARN_DEPRECATED_ONCE
-DVXL_LEGACY_ERROR_REPORTING -g -O2 -fstack-protector
--param=ssp-buffer-size=4 -Wformat -Werror=format-security
-I/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/obj-x86_64-kfreebsd-gnu/vcl
-I/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/vcl
-I/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/obj-x86_64-kfreebsd-gnu/core
-I/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/core
-o CMakeFiles/vidl_test_include.dir/test_include.o -c
/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/core/vidl/tests/test_include.cxx
In file included from /usr/include/libavutil/avutil.h:318:0,
                 from /usr/include/libavutil/samplefmt.h:22,
                 from /usr/include/libavcodec/avcodec.h:30,
                 from
/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/core/vidl/vidl_ffmpeg_convert.h:24,
                 from
/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/core/vidl/tests/test_include.cxx:30:
/usr/include/libavutil/common.h: In function 'int32_t
av_clipl_int32_c(int64_t)':
/usr/include/libavutil/common.h:168:47: error: 'UINT64_C' was not
declared in this scope
make[3]: *** [core/vidl/tests/CMakeFiles/vidl_test_include.dir/test_include.o]
Error 1
make[3]: Leaving directory
`/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/obj-x86_64-kfreebsd-gnu'
make[2]: *** [core/vidl/tests/CMakeFiles/vidl_test_include.dir/all] Error 2
/usr/bin/cmake -E cmake_progress_report
/build/buildd-vxl_1.14.0-16-kfreebsd-amd64-dbTN_R/vxl-1.14.0/obj-x86_64-kfreebsd-gnu/CMakeFiles
make[2]: *** Waiting for unfinished jobs....

[2]
https://buildd.debian.org/status/fetch.php?pkg=vxl&arch=kfreebsd-amd64&ver=1.14.0-16&stamp=1336155584





More information about the Debian-med-packaging mailing list