hikyuu2/docs/source/developer.rst

97 lines
3.0 KiB
ReStructuredText
Raw Normal View History

2019-02-27 23:27:11 +08:00
.. _developer:
2019-02-17 16:10:03 +08:00
C++ 开发者指南
===============
.. note::
2019-02-17 23:21:39 +08:00
为了顺利编译代码, 请勿使用从 github 直接下载源码包的方式编译。 原因是 git 上传时部分文件的换行符被置换为Linux式的换行符将导致直接下载的部分代码在Windows下无法顺利编译。
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
C++ API参考`<http://fasiondog.cn/hikyuu/cpp_ref/index.html>`_
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
C++测试工程参考:`<http://fasiondog.cn/hikyuu/test_doc/index.html>`_
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
编译前准备
2019-02-17 16:10:03 +08:00
----------------
2019-02-17 23:21:39 +08:00
1、安装C++编译器
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
- Windows 平台Visual C++ 2017 (或以上)
- Linux 平台: g++ > = 5.4.0 、 clang++ >= 3.8.0
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
2、安装构建工具 xmake
^^^^^^^^^^^^^^^^^^^^^^^^^^^
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
xmake >= 2.2.2,网址:`<https://github.com/xmake-io/xmake>`_
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
Windows下从 xmake github 页面中的“release”进入直接下载相应的 exe 安装包安装即可:
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
.. figure:: _static/dev-001.jpg
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
Linux、macOSX 执行以下指令安装:
2019-02-17 16:10:03 +08:00
.. code-block:: shell
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
git clone --branch=dev https://github.com/tboox/xmake.git tboox/xmake --depth 1
cd ./tboox/xmake
./scripts/get.sh __local__
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
3、克隆 Hikyuu 源码
^^^^^^^^^^^^^^^^^^^^^^^^
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
执行以下命令克隆 hikyuu 源码:(请勿在中文目录下克隆代码)
2019-02-17 16:10:03 +08:00
.. code-block:: shell
2019-02-17 23:21:39 +08:00
git clone https://github.com/fasiondog/hikyuu.git --recursive --depth 1
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
4、下载 Boost 源码
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
1. 下载 Boost 源码 `<http://www.boost.org>`_
2. 将下载的 boost 源码包解压至上一步中克隆的 hikyuu目录下如下图所示
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
.. figure:: _static/dev-002.jpg
2019-02-17 16:10:03 +08:00
.. note::
2019-02-17 23:21:39 +08:00
以下版本的 boost 无法顺利编译,请注意注意不要使用:
- Windows1.67
- linux、macOS1.68
3. 如果使用 Anaconda 的 python需手工修改 boost 根目录下的 project-config.jam 文件, 找到 “using python” 所在行手工添加python的版本、可执行文件、include目录using python : 3.7 : "/Users/ljh/opt/anaconda3/bin/python3.7" : /Users/ljh/opt/anaconda3/include/python3.7m ;
2019-02-17 16:10:03 +08:00
5、Linux下安装依赖软件包
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Linux下需安装依赖的开发软件包hdf-dev、mysqlclient。如 Ubuntu 下,执行以下命令:
.. code-block:: shell
sudo apt-get install -y libhdf5-dev libhdf5-serial-dev libmysqlclient-dev
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
编译与安装
------------
2019-02-17 16:10:03 +08:00
2019-08-01 23:07:10 +08:00
须先安装 python click包pip install click)
2019-07-27 18:41:23 +08:00
直接在克隆的 hikyuu 目录下执行 python setup.py command , 支持的 command
2019-02-17 16:10:03 +08:00
2019-02-17 23:21:39 +08:00
- python setup.py help -- 查看帮助
2019-07-27 18:41:23 +08:00
- python setup.py build -- 执行编译
- python setup.py install -- 编译并执行安装(安装到 python 的 site-packages 目录下)
2019-02-17 23:21:39 +08:00
- python setup.py uninstall -- 删除已安装的Hikyuu
2019-08-01 23:07:10 +08:00
- python setup.py test -- 执行单元测试(可带参数 --compile=1先执行编译
2019-02-17 23:21:39 +08:00
- python setup.py clear -- 清除本地编译结果
2019-07-27 18:41:23 +08:00
- python setup.py wheel -- 生成wheel安装包
2019-02-17 16:10:03 +08:00