Closed rinigus closed 3 years ago
This seems to fix it: https://github.com/rethinkdb/rethinkdb/pull/6407
Also experiencing an ARM 32 bit related issue on the following hardware/software. It would be useful to be able to compile and run S2Geometry on ARM 32 bit platforms.
Raspberry Pi 2 Model B Rev 1.1 ARMV7l, Cortex-A7
[ 4%] Built target s2testing
[ 5%] Building CXX object CMakeFiles/s2.dir/src/s2/encoded_s2cell_id_vector.cc.o
In file included from /home/pi/s2geometry/src/s2/encoded_uint_vector.h:23,
from /home/pi/s2geometry/src/s2/encoded_s2cell_id_vector.h:22,
from /home/pi/s2geometry/src/s2/encoded_s2cell_id_vector.cc:18:
/home/pi/s2geometry/src/s2/third_party/absl/base/internal/unaligned_access.h:289:8: error: ‘uint64’ does not name a type; did you mean ‘uint64_t’?
inline uint64 UnalignedLoad64(const void *p) {
^~~~~~
uint64_t
/home/pi/s2geometry/src/s2/third_party/absl/base/internal/unaligned_access.h:299:39: error: ‘uint64’ has not been declared
inline void UnalignedStore64(void *p, uint64 v) { memcpy(p, &v, sizeof v); }
^~~~~~
/home/pi/s2geometry/src/s2/encoded_uint_vector.h: In function ‘T s2coding::GetUintWithLength(const char*, int)’:
/home/pi/s2geometry/src/s2/third_party/absl/base/internal/unaligned_access.h:309:25: error: ‘UnalignedLoad64’ is not a member of ‘absl::base_internal’
(absl::base_internal::UnalignedLoad64(_p))
^~~~~~~~~~~~~~~
/home/pi/s2geometry/src/s2/encoded_uint_vector.h:166:32: note: in expansion of macro ‘ABSL_INTERNAL_UNALIGNED_LOAD64’
if (sizeof(T) == 8) return ABSL_INTERNAL_UNALIGNED_LOAD64(ptr);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pi/s2geometry/src/s2/third_party/absl/base/internal/unaligned_access.h:309:25: note: suggested alternative: ‘UnalignedLoad32’
(absl::base_internal::UnalignedLoad64(_p))
^~~~~~~~~~~~~~~
/home/pi/s2geometry/src/s2/encoded_uint_vector.h:166:32: note: in expansion of macro ‘ABSL_INTERNAL_UNALIGNED_LOAD64’
if (sizeof(T) == 8) return ABSL_INTERNAL_UNALIGNED_LOAD64(ptr);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/s2.dir/build.make:89: CMakeFiles/s2.dir/src/s2/encoded_s2cell_id_vector.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:110: CMakeFiles/s2.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
Should be fixed by #183
As expected earlier by others, current s2geometry fails to compile on ARM 32-bit platform:
Any updates regarding
BN_ext_get_uint64
for such platform? As I am not really familiar with bignum at OpenSSL, any suggestions on fixing it?Usecase: Linux flatpak for ARM32; Linux mobile OSes (Sailfish, Ubuntu Touch) that have either 32-bit userspace or support 32-bit HW.