Skip to content

Commit c5368b2

Browse files
committed
Fix build issues
1 parent 89d337f commit c5368b2

File tree

3 files changed

+12
-6
lines changed

3 files changed

+12
-6
lines changed

CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -491,6 +491,8 @@ endif ()
491491
add_subdirectory (contrib EXCLUDE_FROM_ALL)
492492

493493
if (NOT ENABLE_JEMALLOC)
494+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_JEMALLOC=0 -DARROW_JEMALLOC=0")
495+
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_JEMALLOC=0 -DARROW_JEMALLOC=0")
494496
message (WARNING "Non default allocator is disabled. This is not recommended for production builds.")
495497
else ()
496498
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DUSE_JEMALLOC=1 -DJEMALLOC_NO_RENAME=1 -DARROW_JEMALLOC=1")

chdb/build.sh

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,23 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
99
BUILD_DIR=${PROJ_DIR}/buildlib
1010

1111
HDFS="-DENABLE_HDFS=1 -DENABLE_GSASL_LIBRARY=1 -DENABLE_KRB5=1"
12+
MYSQL="-DENABLE_MYSQL=1"
1213
# check current os type
1314
if [ "$(uname)" == "Darwin" ]; then
15+
export CXX=/usr/local/opt/llvm/bin/clang++
16+
export CC=/usr/local/opt/llvm/bin/clang
17+
export PATH=/usr/local/opt/llvm/bin:$PATH
1418
GLIBC_COMPATIBILITY="-DGLIBC_COMPATIBILITY=0"
1519
UNWIND="-DUSE_UNWIND=0"
1620
JEMALLOC="-DENABLE_JEMALLOC=0"
1721
PYINIT_ENTRY="-Wl,-exported_symbol,_PyInit_${CHDB_PY_MOD}"
1822
HDFS="-DENABLE_HDFS=0 -DENABLE_GSASL_LIBRARY=0 -DENABLE_KRB5=0"
23+
MYSQL="-DENABLE_MYSQL=0"
1924
# if Darwin ARM64 (M1, M2), disable AVX
2025
if [ "$(uname -m)" == "arm64" ]; then
2126
CMAKE_TOOLCHAIN_FILE="-DCMAKE_TOOLCHAIN_FILE=cmake/darwin/toolchain-aarch64.cmake"
2227
CPU_FEATURES="-DENABLE_AVX=0 -DENABLE_AVX2=0 -DENABLE_SIMDJSON=0"
2328
EMBEDDED_COMPILER="-DENABLE_EMBEDDED_COMPILER=0"
24-
export CXX=/usr/local/opt/llvm/bin/clang++
25-
export CC=/usr/local/opt/llvm/bin/clang
2629
else
2730
EMBEDDED_COMPILER="-DENABLE_EMBEDDED_COMPILER=1"
2831
# disable AVX on Darwin for macos11
@@ -70,9 +73,10 @@ cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_THINLTO=0 -DENABLE_TESTS=0 -DENABLE_CL
7073
-DENABLE_AZURE_BLOB_STORAGE=0 -DENABLE_CLICKHOUSE_COPIER=0 -DENABLE_CLICKHOUSE_DISKS=0 -DENABLE_CLICKHOUSE_FORMAT=0 -DENABLE_CLICKHOUSE_GIT_IMPORT=0 \
7174
-DENABLE_AWS_S3=1 -DENABLE_HIVE=0 -DENABLE_AVRO=1 \
7275
-DENABLE_CLICKHOUSE_OBFUSCATOR=0 -DENABLE_CLICKHOUSE_ODBC_BRIDGE=0 -DENABLE_CLICKHOUSE_STATIC_FILES_DISK_UPLOADER=0 \
73-
-DENABLE_KAFKA=1 -DENABLE_MYSQL=1 -DENABLE_LIBPQXX=1 -DENABLE_NATS=0 -DENABLE_AMQPCPP=0 -DENABLE_NURAFT=0 \
76+
-DENABLE_KAFKA=1 -DENABLE_LIBPQXX=1 -DENABLE_NATS=0 -DENABLE_AMQPCPP=0 -DENABLE_NURAFT=0 \
7477
-DENABLE_CASSANDRA=0 -DENABLE_ODBC=0 -DENABLE_NLP=0 \
7578
-DENABLE_LDAP=0 \
79+
${MYSQL} \
7680
${HDFS} \
7781
-DENABLE_LIBRARIES=0 -DENABLE_RUST=0 \
7882
${GLIBC_COMPATIBILITY} \
@@ -106,7 +110,7 @@ ninja -v > build.log
106110
# extract the command to generate CHDB_PY_MODULE
107111

108112
LIBCHDB_CMD=$(grep 'clang++.*-o programs/clickhouse .*' build.log \
109-
| sed "s/-o programs\/clickhouse/-fPIC -shared ${PYINIT_ENTRY} -o ${CHDB_PY_MODULE}/" \
113+
| sed "s/-o programs\/clickhouse/-fPIC -Wl,-undefined,dynamic_lookup -shared ${PYINIT_ENTRY} -o ${CHDB_PY_MODULE}/" \
110114
| sed 's/^[^&]*&& //' | sed 's/&&.*//' \
111115
| sed 's/ -Wl,-undefined,error/ -Wl,-undefined,dynamic_lookup/g' \
112116
| sed 's/ -Xlinker --no-undefined//g' \

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,8 @@ def fix_version_init(version):
6767
with open(init_file, "r+") as f:
6868
init_content = f.read()
6969
# regex replace the version string `chdb_version = (0, 1, 0)`
70-
regPattern = r"chdb_version = \(\d+, \d+, \d+\)"
71-
init_content = re.sub(regPattern, f"chdb_version = ({p1}, {p2}, {p3})", init_content)
70+
regPattern = r"chdb_version = \(\'\d+\', \'\d+\', \'\d+\'\)"
71+
init_content = re.sub(regPattern, f"chdb_version = ('{p1}', '{p2}', '{p3}')", init_content)
7272
f.seek(0)
7373
f.write(init_content)
7474
f.truncate()

0 commit comments

Comments
 (0)