linux CTP 编译 问题

方法一

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函数并且完成编译

 

linux CTP 编译 问题

上一篇:Linux打印字符串不换行


下一篇:WindowsAPI每日一练(2) 使用应用程序句柄