Build fails on linux-32
I got the following error when trying to build on a linux-32 host:
/tmp/TileDB/external/src/blosc/shuffle.cc:280:4: error: #warning Hardware-acceleration detection not implemented for the target architecture. Only the generic shuffle/unshuffle routines will be available. [-Werror=cpp]
#warning Hardware-acceleration detection not implemented for the target architecture. Only the generic shuffle/unshuffle routines will be available.
^
/tmp/TileDB/external/src/blosc/shuffle.cc: In function ‘blosc::shuffle_implementation_t blosc::get_shuffle_implementation()’:
/tmp/TileDB/external/src/blosc/shuffle.cc:290:22: error: unused variable ‘cpu_features’ [-Werror=unused-variable]
blosc_cpu_features cpu_features = blosc_get_cpu_features();
^
cc1plus: all warnings being treated as errors
@gsakkis you can disable warnings as error to avoid this as a workaround. Please try adding -DTILEDB_WERROR to your cmake command or --disable-werror if you use the bootstrap script.
We will look at fixing the warning so you will not need to disable the werror for the future.
As a general note, we have not verbosely tested 32bit architectures, please let us know if you run into any further problems.
@Shelnutt2 thanks for the prompt response. I managed to built tiledb and tiledb-py with -DTILEDB_WERROR=ON (had to also pass -DTILEDB_S3=OFF).
Btw I got quite a few more warnings for tiledb-py and many tests fail with tiledb.libtiledb.TileDBError: [TileDB::Buffer] Error: Read failed; Trying to read beyond buffer size.
@gsakkis thanks for reporting this. @joe-maley was able to track down the error and it should be fixed by #1739 . We will include this in the next 2.0.7 release.
Great, thanks a lot!
Try setting these before building:
export CFLAGS="-mfpmath=sse -msse2"
export CXXFLAGS="-mfpmath=sse -msse2"
See also: https://github.com/TileDB-Inc/TileDB/issues/1779