kiyo-masui / bitshuffle

Filter for improving compression of typed binary data.
Other
215 stars 76 forks source link

error: conflicting types for ‘uint64_t’ #82

Open eds-slim opened 4 years ago

eds-slim commented 4 years ago

HI,

when trying to install imagecodecs using python3 -m pip install --user --global-option=build_ext --global-option="-I/work/fawx493/.software/include" --global-option="-L/work/fawx493/.software/lib64" imagecodecs I receive an error: conflicting types for ‘uint64_t’ which I believe might be related to bitshuffle.

More precisely, I obtain

gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O3 -march=native -O3 -march=native -I/sw/env/gcc-8.3.0/openmpi/3.1.4/include -I/sw/compiler/gcc-8.3.0/include -I/usr/include -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/ncurses -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/db4 -O3 -march=native -O3 -march=native -I/sw/env/gcc-8.3.0/openmpi/3.1.4/include -I/sw/compiler/gcc-8.3.0/include -I/usr/include -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/ncurses -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/db4 -O3 -march=native -O3 -march=native -I/sw/env/gcc-8.3.0/openmpi/3.1.4/include -I/sw/compiler/gcc-8.3.0/include -I/usr/include -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/ncurses -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/db4 -fPIC -Iimagecodecs -Ibitshuffle-0.3.5 -I/work/fawx493/.software/include -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/python3.6 -I/sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/lib/python3.6/site-packages/numpy/core/include -c imagecodecs/_bitshuffle.c -o build/temp.linux-x86_64-3.6/imagecodecs/_bitshuffle.o
    In file included from /sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/lib/python3.6/site-packages/numpy/core/include/numpy/ndarraytypes.h:1822:0,
                     from /sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/lib/python3.6/site-packages/numpy/core/include/numpy/ndarrayobject.h:12,
                     from /sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/lib/python3.6/site-packages/numpy/core/include/numpy/arrayobject.h:4,
                     from imagecodecs/_bitshuffle.c:598:
    /sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/lib/python3.6/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
     #warning "Using deprecated NumPy API, disable it with " \
      ^
    In file included from bitshuffle-0.3.5/bitshuffle.h:32:0,
                     from imagecodecs/_bitshuffle.c:602:
    bitshuffle-0.3.5/bitshuffle_core.h:40:31: error: conflicting types for ‘uint64_t’
       typedef unsigned long long  uint64_t;
                                   ^
    In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/stdint.h:9:0,
                     from /usr/include/inttypes.h:27,
                     from /sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/python3.6/pyport.h:6,
                     from /sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/python3.6/Python.h:53,
                     from imagecodecs/_bitshuffle.c:4:
    /usr/include/stdint.h:55:27: note: previous declaration of ‘uint64_t’ was here
     typedef unsigned long int uint64_t;
                               ^
    In file included from bitshuffle-0.3.5/bitshuffle.h:32:0,
                     from imagecodecs/_bitshuffle.c:602:
    bitshuffle-0.3.5/bitshuffle_core.h:41:31: error: conflicting types for ‘int64_t’
       typedef long long           int64_t;
                                   ^
    In file included from /usr/include/stdlib.h:314:0,
                     from /sw/env/gcc-8.3.0_openmpi-3.1.4/pkgsrc/2019Q1/include/python3.6/Python.h:34,
                     from imagecodecs/_bitshuffle.c:4:
    /usr/include/sys/types.h:197:1: note: previous declaration of ‘int64_t’ was here
     __intN_t (64, __DI__);
     ^
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /sw/link/python/3.6.8/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/work/tmp/node001.2020-05-18-202016.fawx493.15709/pip-install-aae6jh56/imagecodecs/setup.py'"'"'; __file__='"'"'/work/tmp/node001.2020-05-18-202016.fawx493.15709/pip-install-aae6jh56/imagecodecs/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' build_ext -I/work/fawx493/.software/include -L/work/fawx493/.software/lib64 install --record /work/tmp/node001.2020-05-18-202016.fawx493.15709/pip-record-w5odwqxj/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/fawx493/.local/include/python3.6/imagecodecs Check the logs for full command output.

Any advice on how to avoid this conflicting type error? Thanks!