1、准备g++ 如果没有,请下载。 安装g++,
sudo apt-get install g++用g++ --version查看g++版本,类似下面,表明环境已经准备好
songroom@DESKTOP-MEDPUTU:~/rust_new_test$ g++ --version g++ (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 Copyright (C) 2017 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.2、cc库
toml文件
[build-dependencies] cc = "1.0"3、代码
fn main() { check_arch(); cc::Build::new() .file("src/bridge/bridge.cpp") .cpp(true) .warnings(false) .flag("-std=c++11") .compile("bridge"); }注意: 文件路径问题,比如,bridge.hpp中有:
#include "../../ctp-sdk/ThostFtdcMdApi.h" #include "../../ctp-sdk/ThostFtdcTraderApi.h" #include "../../ctp-sdk/ThostFtdcUserApiDataType.h" #include "../../ctp-sdk/ThostFtdcUserApiStruct.h" extern "C" CThostFtdcMdApi::CThostFtdcMdApi *CreateFtdcMdApi(const char *pszFlowPath = "", const bool bIsUsingUdp = false, const bool bIsMulticast = false); extern "C" const char *GetApiVersion(CThostFtdcMdApi::CThostFtdcMdApi *self); extern "C" void Release(CThostFtdcMdApi::CThostFtdcMdApi *self); extern "C" void Init(CThostFtdcMdApi::CThostFtdcMdApi *self);如果写成:
#include "../ctp-sdk/ThostFtdcMdApi.h"可能是不一样的,编译器可能找不到。