前言:
当前兄弟们对“centos7apachesvn”都比较关心,我们都想要学习一些“centos7apachesvn”的相关资讯。那么小编也在网摘上收集了一些对于“centos7apachesvn””的相关资讯,希望大家能喜欢,咱们一起来了解一下吧!centos6中安装vnpy1.8
# 软件版本
vnpy-1.8
CentOS release 6.8 (Final)
gcc (GCC) 4.7.2 20121015 (Red Hat 4.7.2-5)
Python 2.7.13 :: Anaconda custom (64-bit)
Anaconda2-4.0.0
conda 4.5.10
MongoDB: 2.6.13-pre-
boost_1_68_0
---------------------------
# 安装Python
## 下载 Anaconda2 并安装
``` bash
/cd to/codes/anaconda/
wget
chmod +x Anaconda2-4.0.0-Linux-x86_64.sh
./Anaconda2-4.0.0-Linux-x86_64.sh
```
## Anaconda2 所安装 的 python 路径
``` bash
bin: /root/anaconda2/bin/python
include: /root/anaconda2/include/python2.7
lib: /root/anaconda2/lib/python2.7
```
## 查看 python 的 路径
``` bash
which python
/root/anaconda2/bin/python
```
-------------------------
# snappy 安装
``` bash
yum install -y snappy-devel.x86_64
pip install python-snappy
```
---------------------------
# mongodb 安装 (pymongo(3.7.1) needs mongodb >= 2.6)
``` bash
# 从 github 下载 mongodb2.6
unzip mongo-2.6.zip
cd mongo-2.6
scons mongod
scons mongo
scons --prefix=/opt/mongo install
```
## mongodb 配置
``` bash
vim /etc/mongodb.conf
## /etc/mongodb.conf 的文件内容修改为:
pidfilepath = /var/run/mongodb/mongodb.pid
logpath = /var/log/mongodb/mongodb.log
dbpath =/var/lib/mongodb
journal = true
```
## mongodb 路径
创建数据库的数据路径
``` bash
mkdir -p /data/db
```
## mongodb 的安装路径
mongodb 的安装路径 在
``` bash
bin: /opt/mongo/bin
```
该路径需要添加进去 环境变量 PATH。
可以写入到 /ete/profile 或者 ~/.bashrc。
``` bash
export PATH=/opt/mongo/bin
{PATH}
```
## mongod 的 启动
运行 vnpy 前,运行 mongod 服务。
```
mongod &
```
------------------------------
# boost_1_68_0 安装 (vnpy needs boost >= 1.55)
``` bash
# 下载 boost_1_68_0
# 安装 到 默认路径路径 /usr/local/include , /usr/local/bin
./bootstrap.sh
# 编译和安装最小安装库
./b2 install
ldconfig /usr/local/lib
‵‵‵
## boost 的安装路径
``` bash
include: /usr/local/include/boost
lib: /usr/local/lib
```
-------------------------------
# vnpy1.8 的安装
## 修改 vnpy-1.8 的 CMakeLists.txt
修改 vnpy-1.8的 所有的 CMakeLists.txt
不然 会出现 找不到 boost 和 python 库的问题。
修改所有 CMakeLists.txt 文件:
1 修改 PYTHON_INCLUDE_PATH
* 修改前: PYTHON_INCLUDE_PATH /usr/include/python2.7
* 修改后: PYTHON_INCLUDE_PATH /root/anaconda2/include/python2.7
2 修改 PATHS
* 修改前: PATHS /usr/lib/x86_64-linux-gnu
* 修改后: PATHS /root/anaconda2/lib
也可以用以下脚本修改,项目中 所有的 CMakeLists.txt。
将脚本 放置到 vnpy-1.8 的目录下面。然后运行。
``` bash
#/bin/bash
function main()
{
local files=`target_file_search "CMakeLists.txt"`
if [ $? -ne 0 ]; then
return 1
fi
string_replace "\<python\>" "python27" "${files}"
string_replace "
PYTHON_INCLUDE_PATH \/usr\/include\/python2.7" "
PYTHON_INCLUDE_PATH \/root\/anaconda2\/include\/python2.7" "${files}"
string_replace "
PATHS \/usr\/lib\/x86_64-linux-gnu" "
PATHS \/root\/anaconda2\/lib" "${files}"
return 0
}
function target_file_search()
{
local file_name=$1
files=`find . -name ${file_name}`
if [ $? -ne 0 ]; then
return 1
fi
echo ${files}
return 0
}
function string_replace
{
local patten=$1
local replaced=$2
local files=$3
sed -i "s/${patten}/${replaced}/g" ${files}
return 0
}
main $*
```
后面按照 网上的指引安装 便可。
``` bash
# cd 到 vnpy-1.8 的目录
install.sh
```
-----------------------------------------
# 解决 libta_lib.so 需要 glibc2.14 的问题:
当启动 vnpy 的 程序出现以下问题时。
ImportError: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /root/anaconda2/lib/python2.7/site-packages/talib/../../../libta_lib.so.0)
表示 libta_lib.so 需要 glibc 2.14。
但是 glibc 只有 2.12。
``` bash
# strings /lib64/libc.so.6 | grep GLIBC
...
GLIBC_2.12
```
注意: 千万不要升级 glibc。否则 会影响到整个系统,可能开不了机。
---------------------------
## 重新 安装 ta-lib 替换原来的
### 查看 anaconda2 中 原来的 ta_lib 安装路径:
``` bash
a: /root/anaconda2/lib/libta_lib.a
so: /root/anaconda2/lib/libta_lib.so.0.0.0
include: /root/anaconda2/include/ta-lib
bin: /root/anaconda2/bin/ta-lib-config
```
由于需要 覆盖原来的 设置。所以最好 备份以上的路径和文件。
### 查看 libta_lib.so 的 glibc 版本
``` bash
objdump -p /root/anaconda2/lib/libta_lib.so.0.0.0 | grep GLIBC
GLIBC_2.3
GLIBC_2.14 # <-- 表示 libta_lib.so 需要 glibc 2.14,这个就是出错的原因
GLIBC_2.2.5
```
---------------------------
## 下载 ta_lib 的源码,进行 重新 编译和安装。
``` bash
# 下载 和 解压
cd /to/codes/ta_lib
wget ... ib-0.4.0-src.tar.gz
tar xzvf ta-lib-0.4.0-src.tar.gz
chown root:root ta-lib -R
cd ta-lib
# 安装 到 /root/anaconda2
./configure --prefix='/root/anaconda2'
make -j 8 && make install
```
-----------------------------
## xtpGateway 问题:
NameError: global name 'xtpGateway' is not defined
## 修改 VnTrader/run.py
屏蔽 run.py 的 xtpGateway 功能。
``` python
# if system == 'Linux':
# me.addGateway(xtpGateway)
```
=========================================
标签: #centos7apachesvn