FreeBSD build issues
stefandxm opened this issue · comments
There are some issues that prevents FalkorDB to build in FreeBSD (14.0) .
-
deps/RediSearch:
src/util/timeout.h - using CLOCK_MONOTONIC_RAW breaks, defining it as CLOCK_MONOTONIC works, this is done elsewhere in the codebase so wrapping it in a #ifndef .. works well
-
(deps/RediSearch) / deps/VectorSimilarity:
src/VecSim/info_iterator.h: include stdint.h + defining u_int64_t as uint64_t -
(deps/RediSearch) / redies) /mk/main:
removed the entire block using getpy that checks for working python version since this does not work, may be some other work around but since the system had a working python (in path) and it failed to detect it.. i just removed the entire code block there and it worked. -
(deps/RediSearch) / (redies) / mk/configure.rules :
replace hardcoded make - $(SHOW)make - since it breaks with non gmake + in mk/cmake.rules there is a failure with the DRY run / explicit make commands (non gmake) that breaks, here i didnt fully try everything i just removed the entire dryrun and replace the final make with a gmake to make it work -
deps/readies:
i guess same issues as in deps/RediSearch/redies -
src/bolt/bolt.c and src/bolt/ws.c:
Symbol not matching for ntohll/htonll, hack replaced it to ntohl/htonl not sure if it is 1:1.
But with these fixes it compiles and loads in FreeBSD 14 with the redis-server that is shipped in the package manager (pkg), havent tested it exhaustively yet but it hasnt crashed yet ..
I am not sure if this should be an incident or being put somewhere else since there is no official support for FreeBSD (yet), but it would be a great thing to have and it seems it may not require too much work in terms of code lines, however I am not too sure about the dependencies..