ClickHouse/docs/en/development/build-osx.md
2020-12-13 16:10:07 +08:00

2.2 KiB
Raw Blame History

toc_priority toc_title
65 Build on Mac OS X

How to Build ClickHouse on Mac OS X

Build should work on Mac OS X 10.15 (Catalina).

Install Homebrew

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Install Required Compilers, Tools, and Libraries

$ brew install cmake ninja libtool gettext

Checkout ClickHouse Sources

$ git clone --recursive git@github.com:ClickHouse/ClickHouse.git

or

$ git clone --recursive https://github.com/ClickHouse/ClickHouse.git

$ cd ClickHouse

Build ClickHouse

Please note: ClickHouse doesn't support build with native Apple Clang compiler, we need use clang from LLVM.

$ mkdir build
$ cd build
$ cmake ..-DCMAKE_C_COMPILER=`brew --prefix llvm`/bin/clang -DCMAKE_CXX_COMPILER=`brew --prefix llvm`/bin/clang++ -DCMAKE_PREFIX_PATH=`brew --prefix llvm`
$ ninja
$ cd ..

Caveats

If you intend to run clickhouse-server, make sure to increase the systems maxfiles variable.

!!! info "Note" Youll need to use sudo.

To do so, create the /Library/LaunchDaemons/limit.maxfiles.plist file with the following content:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
        "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>limit.maxfiles</string>
    <key>ProgramArguments</key>
    <array>
      <string>launchctl</string>
      <string>limit</string>
      <string>maxfiles</string>
      <string>524288</string>
      <string>524288</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>ServiceIPC</key>
    <false/>
  </dict>
</plist>

Execute the following command:

$ sudo chown root:wheel /Library/LaunchDaemons/limit.maxfiles.plist

Reboot.

To check if its working, you can use ulimit -n command.

Original article