dmlc-core
dmlc-core copied to clipboard
QNX: unable to determine endianness of your machine
Hello,
I am using dmlc-core in qnx env, when compile dmlc-core, error "Unable to determine endianness of your machine; use CMake to compile" happened in endian.h:
#ifdef DMLC_CMAKE_LITTLE_ENDIAN
// If compiled with CMake, use CMake's endian detection logic
#define DMLC_LITTLE_ENDIAN DMLC_CMAKE_LITTLE_ENDIAN
#else
#if defined(APPLE) || defined(_WIN32)
#define DMLC_LITTLE_ENDIAN 1
#elif defined(GLIBC) || defined(GNU_LIBRARY)
|| defined(ANDROID) || defined(RISCV)
#include <endian.h>
#define DMLC_LITTLE_ENDIAN (__BYTE_ORDER == __LITTLE_ENDIAN)
#elif defined(FreeBSD) || defined(OpenBSD)
#include <sys/endian.h>
#define DMLC_LITTLE_ENDIAN (_BYTE_ORDER == _LITTLE_ENDIAN)
#elif defined(EMSCRIPTEN) || defined(hexagon)
#define DMLC_LITTLE_ENDIAN 1
#elif defined(__sun) || defined(sun)
#include <sys/isa_defs.h>
#if defined(_LITTLE_ENDIAN)
#define DMLC_LITTLE_ENDIAN 1
#else
#define DMLC_LITTLE_ENDIAN 0
#endif
#else
#error "Unable to determine endianness of your machine; use CMake to compile"
#endif
#endif
my question is :
- Does dmlm support qnx os?
- qnx has its own gulliver.h to define endian, how to use it in dmlc-core?
thanks
As the error message suggests, please use CMake to build.
Fixed in https://github.com/dmlc/dmlc-core/pull/672