折腾了好久,终于搞定了,头秃头秃~
考完试没事情干,打算在服务器上安装最新版vnpy,看了网上很多教程资料,一直安装出错
卡在最后一步就是安装不上去,最后一步步排查把问题解决了,恰巧看到论坛有朋友提问一样
的问题就发个帖子。其中很多就是论坛的教程,感谢前人的肩膀,给我踩了下/😀😀😀

本人的环境:ubuntu18.04 腾讯云
使用工具:xshell flashfxp UltraEdit
管理员root用户

这一步是安装相关依赖,在论坛看到的
sudo vim /etc/apt/sources.list.d/pgdg.list
sudo apt-get update
deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get install libpq-dev

安装anaconda
sudo apt-get install build-essential
bash Anaconda3-2019.07-Linux-x86_64.sh

配置anaconda为python默认解释器
vim /etc/profile
export PATH=/root/anaconda3/bin:$PATH
source /etc/profile

安装talib
tar -xvf ta-lib-0.4.0-src.tar.gz
cd ta-lib
./configure
make
make install
vim /etc/profile
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
source /etc/profile
pip install ta-lib

升级gcc编译器
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install gcc-9 g++-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9

现在去安装是不能成功的,会报一大堆的问题还得修改一点东西

修改相关文件配置(解决编译失败等问题)大部分都是在这个环节出的问题
问题出在安装文件中setup.py文件中,个别的api无法编译或许是库的问题c++找不到
经过排查问题在vones这个api上面,只要把vone相关的代码注释掉就可以正常安装

#    vnoes = Extension(
#        name="vnpy.api.oes.vnoes",
#        sources=gather_autocxxpy_generated_files(
#            "vnpy/api/oes/vnoes/generated_files/",
#        ),
#        include_dirs=["vnpy/api/oes/vnoes/include",
#                      "vnpy/api/oes/vnoes/include/oes"],
#        define_macros=[("BRIGAND_NO_BOOST_SUPPORT", "1")],
#        undef_macros=[],
#        library_dirs=["vnpy/api/oes/vnoes/libs"],
#        libraries=["oes_api"],
#        extra_compile_args=compiler_flags,
#        extra_link_args=extra_link_args,
#        runtime_library_dirs=runtime_library_dirs,
#        depends=[],
#        language="cpp",
#    )


        ext_modules = [
            vnctptd, vnctpmd,
            vnxtptd, vnxtpmd,
            vnsgittd, vnsgitmd,
            vnksgoldmd, vnksgoldtd]
#            vnoes   //这个地方需要注释掉
#       ]

#    ext_modules = check_extension_build_flag(
#        ext_modules, "VNPY_BUILD_OES", vnoes)
上面两行也注释掉
注意:注释掉一定不要缺少也不要多了,把vones相关的注释掉就可以其他的不影响!!!

最后安装
sudo PATH=/root/anaconda3/bin:$PATH bash install.sh

安装成功!

要是看不明白:B站传送门→→→https://www.bilibili.com/video/BV1pV411r7Kt?p=17
欢迎点赞欢迎点赞欢迎点赞欢迎点赞欢迎点赞欢迎点赞欢迎点赞欢迎点赞欢迎点赞
用到的工具;链接:https://pan.baidu.com/s/1mRI3a327OB79Iy5x0YHNgg 提取码:9z5o(anaconda talib md文档)