VS添加第三方C/C++庫經驗

    近日準備學習ffmpeg,自然是準備研究下雷神的100行SDL播放器代碼,在進行ffmpeg的VS配置移植時碰到了一些小麻煩,一一道來。由於引入ffmpeg情況比較特殊,除了正常步驟還有別的步驟,詳情請參考  http://blog.sina.com.cn/s/blog_6bcde18101011v2h.html 。筆者以SDL的引入作爲例子

  第三方庫一般分爲三個部分,頭文件,靜態鏈接庫與動態鏈接庫,即.h文件,.lib文件和.dll文件,ffmpeg也不例外,首先處理include和lib

 

SDL的頭文件處於include文件夾中,

靜態和動態鏈接庫均位於lib文件夾

首先將include文件夾拷貝進你的VS項目,並且在VS項目新建一個叫lib的文件夾,將後綴爲.lib的文件拷貝進lib文件夾

接下來就是進行VS的項目配置了

首先,右鍵項目,屬性->配置屬性->C/C++->常規,在常規中找到附加包含目錄,寫上include,即你項目下的include文件夾,你可以選擇你喜歡的名字

同樣,在屬性->配置屬性->鏈接器->常規,在常規中找到附加庫目錄,寫上lib,即你項目下的lib文件夾

接着,在屬性->配置屬性->鏈接器->輸入,在輸入中找到附加依賴項,加上那幾個lib文件的名字


接着將.dll文件放入項目目錄和Debug已經Release目錄就行了

配置搞定了

測試一下SDL

#include "SDL.h"
#include <stdio.h>

int main(int argc, char* argv[])
{
	if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO) == -1)
	{
		exit(-1);
	}
	printf("Init successful!!\n");
	SDL_Quit();
	printf("SDL quit!!\n");
	system("pause");
}

生成時報錯未識別標識符號_main,這個是SDL的老問題,因爲SDL的入口點其實在SDL_main

所以在屬性->配置屬性->鏈接器->高級的選項中找到入口點,設爲SDL_main

同時在屬性->配置屬性->鏈接器->系統的選項中找到子系統選項,設爲 控制檯 (/SUBSYSTEM:CONSOLE)

運行成功,配置完成

C/C++引入第三方庫真是蛋疼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章