That error usually means that compiler
detection has failed somehow. I have seen it happen sometimes
if I try to configure a build after a previous attempt to
configure the build failed. Generally I can get rid of the
error by removing ${CMAKE_BINARY_DIR}/CMakeCache.txt and ${CMAKE_BINARY_DIR}/CMakeFiles/ and trying to configure the build
again. I have also seen the error occur if CMake is unable to
write to the build directory. The root cause of the error is
that CMAKE_SIZEOF_VOID_P is undefined. That variable should be
defined during compiler detection, and in newer CMake versions,
it is cached in
${CMAKE_BINARY_DIR}/CMakeFiles/${CMAKE_VERSION}/CMakeCCompiler.cmake.
However, if compiler detection failed previously (for instance,
due to an improperly specified compiler), then ${CMAKE_BINARY_DIR}/CMakeFiles/${CMAKE_VERSION}/CMakeCCompiler.cmake
may exist but may also contain bogus information. That would
prevent compiler detection from running but also prevent
CMAKE_SIZEOF_VOID_P from being defined when the build is
configured again.
In your output below, compiler detection
doesn't appear to occur, which supports my hypothesis.
--
You received this message because you are subscribed to the Google Groups "libjpeg-turbo User Discussion/Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to libjpeg-turbo-u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/libjpeg-turbo-users/5150e30f-a010-45f5-92d7-8c132fb91c59n%40googlegroups.com.
That error usually means that compiler detection has failed somehow. I have seen it happen sometimes if I try to configure a build after a previous attempt to configure the build failed. Generally I can get rid of the error by removing ${CMAKE_BINARY_DIR}/CMakeCache.txt and ${CMAKE_BINARY_DIR}/CMakeFiles/ and trying to configure the build again.
In your output below, compiler detection doesn't appear to occur, which supports my hypothesis.
Strange. Our build system relies upon
CMAKE_SIZEOF_VOID_P in order to determine whether the build is
32-bit or 64-bit. CMAKE_SIZEOF_VOID_P is set by CMake from
CMAKE_C_SIZEOF_DATA_PTR. Generally that happens when CMake
detects the C compiler ABI, which occurs in the body of the
project() directive. The fact that C compiler ABI detection is
failing is probably related (although I've seen ABI detection
fail without causing any further issues in the build.)
This thread seems to describe a similar issue, which was ultimately caused by a mismatch between MinGW and non-MinGW build tools in the PATH.
https://cmake.org/pipermail/cmake/2016-March/063077.html
I would suggest the same diagnostic steps described in that thread:
1. Look at ${CMAKE_BINARY_DIR}/CMakeFiles/${CMAKE_VERSION}/CMakeCCompiler.cmake,
and verify that CMAKE_C_SIZEOF_DATA_PTR and/or
CMAKE_C_ABI_COMPILER are incorrectly set.
2. Examine the CMake error log to determine why C compiler ABI detection failed.
3. Try to reproduce the failure with a simple CMake test.
4. Make sure that you aren't accidentally
using non-Cygwin versions of GNU Make or CMake.
--
You received this message because you are subscribed to the Google Groups "libjpeg-turbo User Discussion/Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to libjpeg-turbo-u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/libjpeg-turbo-users/c63238b6-cfb7-4c0f-b1e1-e980c220f67dn%40googlegroups.com.
Strange. Our build system relies upon CMAKE_SIZEOF_VOID_P in order to determine whether the build is 32-bit or 64-bit. CMAKE_SIZEOF_VOID_P is set by CMake from CMAKE_C_SIZEOF_DATA_PTR. Generally that happens when CMake detects the C compiler ABI, which occurs in the body of the project() directive. The fact that C compiler ABI detection is failing is probably related (although I've seen ABI detection fail without causing any further issues in the build.)
This thread seems to describe a similar issue, which was ultimately caused by a mismatch between MinGW and non-MinGW build tools in the PATH.
https://cmake.org/pipermail/cmake/2016-March/063077.html
I would suggest the same diagnostic steps described in that thread:
1. Look at ${CMAKE_BINARY_DIR}/CMakeFiles/${CMAKE_VERSION}/CMakeCCompiler.cmake, and verify that CMAKE_C_SIZEOF_DATA_PTR and/or CMAKE_C_ABI_COMPILER are incorrectly set.
2. Examine the CMake error log to determine why C compiler ABI detection failed.
3. Try to reproduce the failure with a simple CMake test.
4. Make sure that you aren't accidentally using non-Cygwin versions of GNU Make or CMake.
I'm happy to report that libjpeg-turbo builds completely on Cygwin once such mistakes are unmade. I've learned quite a lesson with this problem.# Save compiler ABI information.set(CMAKE_C_SIZEOF_DATA_PTR "8")set(CMAKE_C_COMPILER_ABI "")
It's all good. I had never seen this
specific cause for that error before, so this exercise will help
me diagnose it if I encounter it in the future.
--
You received this message because you are subscribed to the Google Groups "libjpeg-turbo User Discussion/Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to libjpeg-turbo-u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/libjpeg-turbo-users/CAGB_HuTM9NBkuLPiNLfJww0YtBDd4RWNG-LX3LyZ%2B-LqpSyA0g%40mail.gmail.com.