linux CTP 编译 问题

时间:2021-06-13 09:50:13   收藏:0   阅读:0

方法一

COPY两个*.so文件至上一层,并且为了使得g++编译器能识别两个*.so,要加上"lib"前缀:libthostmduserapi.so   libthosttraderapi.so

$ export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH

$ g++ testMdApi.cpp -L. -lthostmduserapi -lthosttraderapi -o main

方法二

拷贝libthostmduserapi.so   libthosttraderapi.so 到/usr/lib64  或/usr/lib 目录

拷贝4个头文件 到 /usr/include 目录,

cat hello.cpp
-----------------------------
#include "hello.h"

int main(){
        // 这里访问了CTP的库函数,如果程序能过正常编译并执行,说明头文件引用及库连接正常
        CThostFtdcMdApi *pUserApi = CThostFtdcMdApi::CreateFtdcMdApi();
        printf("Hello CTP!\n");
    return 0;
}


cat hello.h
----------------
#include <stdio.h>
#include <ThostFtdcMdApi.h>

cat Makefile
------------------------
all : *.cpp *.h
    g++ *.cpp /etc/ctp/lib/*.so -o hello


clean :
    rm -f *.o *.out *.con hello
-------------------------------
如上三个文件即可调用ctp函数并且完成编译

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!