- #CLION SETUP HOW TO#
- #CLION SETUP FOR MAC#
- #CLION SETUP PATCH#
- #CLION SETUP CODE#
- #CLION SETUP LICENSE#
#set(gtest_disable_pthreads on) #needed in MinGW
test/CMakeLists.txt cmake_minimum_required(VERSION 3.3) Src/CMakeLists.txt #set(core_SRCS ADD ALL SOURCE FILES HERE) Create a C++ project with a src and test directoryĪdd following files: CMakeLists.txt cmake_minimum_required(VERSION 3.3).Create a repository in my ClionProjects folder.
#CLION SETUP HOW TO#
See more tips here for how to add useful logs while debugging.
However, you can enjoy debugging by logs.
You can't use local debugging in Mac since there still some errors to be resolve in CLion/IntelliJ ( IMPALA-8229). #CLION SETUP PATCH#
Then send the patch files to your Ubuntu environment and apply them by git-apply, e.g. use "git diff > be-tmp.patch" in impala-be dir.
After you make some changes, use git-diff to generate a patch, e.g. You can make C++/Python changes in CLion, and Java changes in IntelliJ. Let's say you have two directories, impala-be and impala-fe, for CLion and IntelliJ respectively. finding definitions, finding usages, showing call hierarchy, etc. #CLION SETUP CODE#
So you should be able to navigating in the code base, e.g.
If all go well, your CLion/IntelliJ will still have some errors but they can build index successfully. It's recommended that making dedicated Impala dir for them. There're some conflicts for CLion and IntelliJ to work in the same folder, e.g. Applications/CLion.app/Contents/MacOS/clion # or /Applications/IntelliJ\ IDEA.app/Contents/MacOS/idea Then source $IMPALA_HOME/bin/impala-config.sh and launch CLion/IntelliJ in your terminal. The patch comments out the dependency of LLVM (TODO: resolve this in IMPALA-8229) and fix some stale versions and java paths. Apply this patch in your MacOS env: dev_env_for_Mac.patch (Command: git apply $somewhere/dev_env_for_Mac.patch). But be aware of those compilation outputs and cmake cache files. Now the contents of $IMPALA_HOME in your MacOS laptop should be the same as your Ubuntu environment. Transfer those tar files back to your MacOS laptop and unpack them in your $IMPALA_HOME. (Transferring lots of small files between file systems will be time consuming) After you compile Impala successfully in your Ubuntu environment, package these folders in $IMPALA_HOME: be/generated-sources, fe/generated-sources, toolchain. If you don't have a Ubuntu machine, you can compile Impala in Docker. If you have a Ubuntu machine, go and compile Impala in it first ( link). However, you can still use IntelliJ and CLion on Mac for coding as long as you have compiled Impala successfully in a Ubuntu environment. #CLION SETUP FOR MAC#
there are no pre-built toolchain for Mac and the toolchain may not be compilable on Mac. You may encounter many problems in MacOS, i.e.
The above content requires that you can bootstrap your system successfully. You can use the ClangFormatIJ plugin to run clang-format in IntelliJ and CLion WIP: Using IntelliJ and CLion on Mac Setting break point and debug Using clang-format in IntelliJ and CLion
Copy PYTHONPATH and paste it to Environment Variables in Run/Debug Configurationsĥ. Need to set Environment Variables like what $IMPALA_HOME/bin/impala-python did:ġ. bash -x $IMPALA_HOME/bin/impala-pythonĢ.
Go to Run -> Attach to Local Processes. Select the python interpreter in $IMPALA_HOME/infra/python/env/bin/python. Add an existing virtual env environment. Go to Build, Execution, Deployment -> Python Interpreter. Impala Shell Development using CLion Setup If you see an error "ptrace: Operation not permitted" then follow the instructions here to allow ptracing of non-child processes. Add catalog-debug configuration to debug catalog with a port number of 30030. Add impalad-debug configuration to debug impalad with a port number of 30000. Add LD_LIBRARY_PATH with the value of $IMPALA_HOME/be/build/latest/service. To be able to attach to a local process, follow the instruction here.įront-end Development using IntelliJ Setup. Always source $IMPALA_HOME/bin/impala-config.sh prior to launching IntelliJ or CLion. Bootstrap the system for Impala development. #CLION SETUP LICENSE#
You can request for an open source license for CLion.