Appearance
以mac平台为例,这个做法我相信都是通用的,我用的是clion 2019.1.2. 版本不同,可能功能会略有不同.
编译安装
- 准备
xcode-select --install
- 依赖
brew install automake berkeley-db4 libtool boost miniupnpc openssl pkg-config protobuf python qt libevent qrencode
- 钱包依赖的DB 如果需要钱包功能,则需要Berkeley DB 4.8. 下载安装脚本. 在源码根目录运行:
./contrib/install_db4.sh .
- 编译
bash
git clone https://github.com/bitcoin/bitcoin
cd bitcoin
./autogen.sh
./configure
make
make check
make deploy
比如我在mac上就碰到找不到boost目录的情况,则需要在./configure指定,我的./configure参数:
./configure --enable-debug --without-gui --with-boost=/usr/local/Cellar/boost/1.68.0_1
- 运行 这时候就会在bitcoin/src目录下看到可执行程序bitcoind,bitcoin-cli等.
配置clion
创建CMakefile.txt
在src目录创建CMakefile.txt,内容如下
cmake_minimum_required(VERSION 3.12)
project(src)
set(CMAKE_CXX_STANDARD 11)
include_directories(${PROJECT_SOURCE_DIR}/secp256k1/include
${PROJECT_SOURCE_DIR}/leveldb/include
${PROJECT_SOURCE_DIR}/univalue/include
${PROJECT_SOURCE_DIR}
)
file(GLOB_RECURSE SRCS *.cpp *,h)
创建项目
File->New CMake Project From Source->选择刚刚的CMakefile.txt
等待系统建立索引.这时候你就发现代码跳转,代码提示已经ok了. 如果直接运行是编译不通过的.
支持调试运行
- Run->Edit Configurations->添加Custom Build Application 起名字叫bitcoin-cli
- Configure Custom Build Targets 仍然起名字叫bitcoin-cli
- 添加build Name: bitcoin-cli Program: make Arguments: bitcoin-cli
- clean 选择和build一样的配置
继续配置Custom Build Application Target: 选择bitcoin-cli Executable: 找到文件系统中的可执行程序bitcoin-cli文件
可以根据自己的需要添加运行参数.
调试 在bitcoin-cli.cpp main函数入口处设置断点. 如果有语法错误提示,忽略即可,
点击调试->bitcoin-cli 发现停在了main函数,并且能够显示变量. 只不过对于复杂的变量,不能显示.
这个支持调试的思路就是让clion支持非cmake build的可执行程序,在2. Configure Custom Build Targets
中使用make bitcoin-cli
,实际上就是在src目录执行这个命令. 这样就会在调试之前生成可执行程序.
这里举的例子是bitcoin-cli,如果有调试其他程序需求,如法炮制即可.