Installation fails when particular compiler flags are used
Closed this issue · 6 comments
When compiled with flags like -march=native
/ -mavx
/ -mavx2
/ -msse4.2
compilation fails:
#include <citycrc.h>
^~~~~~~~~~~
"citycrc.h"
In file included from vendor/clickhouse-cpp/contrib/cityhash/city.cc:357:
vendor/clickhouse-cpp/contrib/cityhash/citycrc.h:31:10: error: 'city.h' file not found with include; use "quotes" instead
#include <city.h>
^~~~~~~~
"city.h"
2 errors generated.
make: *** [vendor/clickhouse-cpp/contrib/cityhash/city.o] Error 1
ERROR: compilation failed for package ‘RClickhouse’
- removing ‘/usr/local/lib/R/3.4/site-library/RClickhouse’
Warning in install.packages :
installation of package ‘RClickhouse’ had non-zero exit status
Thanks for reporting this issue! Indeed, this behaviour is strange... especially cause the "missing" file is in the correct place. Which compiler/system do you use?
UPDATE: Since the error is produced by vendor-specific code, I opened another issue for the affected source-code. It should be linked below.
I think we can try to update vendor code - it seems libcityhash
dir was updated in upstream.
I've tried on ubuntu 16.04.3 with gcc 5.4 and os x with clang 4.0.
Are you talking about updating libcityhash in clickhouse-cpp or clickhouse-cpp in this package? The later wouldn't be a problem, but for the first one we have to ask @artpaul. As far as I know, the clickhouse-python guys wrote somewhere that the cityhash library used by Clickhouse-server is outdated and returns slightly different results. So updating this library might be error prone.
Sorry for confusion, I was wrong. When I was checking regarding this issue I opened clickhouse and clickhouse-cpp repos. Inclickhouse
repo libcityhash is 8 month old compared to 9 month in clickhouse-cpp
.
I updated the vendor dictionary some minutes ago. It should work now.
Cool, thanks! confirm it works.