2010-04-15 71 views
2

我教自己的OpenGL和我執行使用的FreeType 2 TTF文字渲染我從我可以在沒有.dll文件的情況下使用Win32 FreeType嗎?

http://gnuwin32.sourceforge.net/packages/freetype.htm

和一對夫婦的我得到了它運行正常的小問題後下載庫。困擾我的事情是,我必須將freetype6.dll的副本與我的可執行文件放在一起以便運行。我通常會盡量避免一堆不必要的dll文件。我對Windows編程有些不熟悉,但從我所瞭解的大多數庫可以構建完全從一個庫運行,而不是在運行時需要一個DLL。查看FT的文檔讓我的大腦融化,所以我想在這裏問一下,看看有沒有與FT合作過的開發者,如果是的話,他們是否知道如何構建庫,以便不需要dll在運行時。

非常感謝您的任何建議或支持。

回答

2

結賬this link。請參閱部分可選:安裝FreeType(通過自己編譯)

按照說明操作,您將會很好。

0

可以生成通過獲取它的源代碼的靜態庫...那麼你將不再需要的DLL。我想對FreeType2的源代碼可以...

+0

你*可以*獲得源代碼,但它非常難以編譯。 – 2010-04-15 15:51:59

+0

是的,來源是可用的,但試圖閱讀構建文檔正在讓我拉我的頭髮。靜態鏈接是我在這裏後,我只是尋找建立Win32的靜態庫的建議。如果有幫助,我使用VC++ 2008。 – Khatharr 2010-04-15 17:04:32

+0

你在編譯靜態庫時遇到了什麼困難......? – 2010-04-16 04:28:05

0

這是什麼DLL通用的。所有的DLL都應該在PATH中,類似於LD_LIBRARY_PATH。在Windows下(與Unix不同),當前目錄始終位於PATH中。所以你只需要設置你的PATH變量來指向這個DLL的位置。

現在,對於Unix ...你可能只是默認安裝了這個庫,就像默認情況下在Windows下不存在的數百個其他有用的庫一樣。

所以...沒有,除非你靜態鏈接你應該使用DLL以某種方式。我的建議 - 使用DLL。

+0

呃...是的,我明白如何使用dll。我只是想在這種情況下靜態鏈接。我可以看到使用動態鏈接的唯一原因是我可能想在將來進行組件升級,但在freetype的情況下,我無法真正看到這種情況的發生。 – Khatharr 2010-04-15 17:10:02

相關問題