自己对window下的编程不熟悉,花费了一下午时间在编译库文件上,也让自己加深了印象,希望对初学者有帮助吧。
第一,自己不是很确定是否可以进行c的编译,因为很多的库的编译都是c++的文件,不过自己测试后,
发现确是可以把dllmain等自带的cpp文件可以改为c文件,进行编译的,调用也是没有问题的;
第二,自己编译的时候,没有写函数的导出的声明,缺少extern __declspec(dllexport),没有“C”,因为本身就是c文件,所以,每次生成的库只有一个文件。按照正常的来说,是会生成dll文件和lib文件两个文件的;而且之前调用的时候,总是出现出错:文件损坏。
第三,调用的时候,头文件要加上extern “C”{};自己对window下编程的学习,还得加强呀!
ps:自己这是在调用g723算法的时候,遇到的问题。因为g723算法的文件全是c文件,而且改为cpp文件的时候,很多函数都是未定义的调用,很多函数找不到头文件。要是编译成库文件,调用的就省事多了,所以自己才这样做的。