操作系统 centos 6.0 CTP-API.v5.5.1.zip 1、如果程序只包含行情库,正常编译运行。 2、如果只包含交易库,也可以正常编译运行。 3、如果同时包含行情和交易,哪怕没有任何代码,只是一个简单的helloworld也会出现double free Code: #include <iostream> using namespace std; int main(void) { cout<< "hello world\n" <<endl; return 0; } g++ main.o -lctpmd -lctptrader -L./lib -g -o ./Bin/ctp [skyline@skyline Bin]$ ./ctp hello world *** glibc detected *** ./ctp: double free or corruption (!prev): 0x00000000017578e0 ***
这个问题可以避免的: 自己写一个libmdapi.so只链接libthostmduserapi.so,写一个libtraderapi.so只链接libthosttraderapi.so,程序链接libmdapi.so和libtraderapi.so(如果链接这两个还是不行的话就用dlopen,反正如果不同时链接到一个的话肯定是可以的)。