Allegro是一個跨平台庫,主要針對視頻遊戲和多媒體編程。它處理常見的低級任務,例如創建窗口,接受用戶輸入,加載數據,繪製圖像,播放聲音等,並通常將基礎平台抽像出來。但是,Allegro不是遊戲引擎:您可以隨意設計和構建程序。
Allegro 5具有以下其他功能:
此讀書我包含適用於Allegro構建的所有平台的一般信息。
readme_cmake.txt討論了Cmake的一些構建選項。
readme_msvc.txt與Microsoft Visual C/C ++在Windows上討論了編譯。
readme_make.txt討論了使用GNU Make的編譯。這適用於Windows上類似Unix的操作系統,例如Linux,MacOS X和Mingw。
readme_macosx.txt還有一些其他關於MacOS X的註釋。
readme_iphone.txt討論iPhone操作系統。
我們假設您已經安裝了C和C ++編譯器。我們支持GCC,Clang和MSVC。
Allegro還需要Cmake 3.0或更高版本才能構建。您可以從http://www.cmake.org/下載它
Allegro分為一個核心庫和許多插件庫。核心庫取決於某些庫的功能。如果您沒有這些,則無濟於事。這些是核心庫所需的:
DirectX SDK(僅Windows)
您可以從Microsoft網站(大下載)獲得MSVC。
另外,MSVC和MINGW的下載較小,請參見:http://liballeg.org/download.html#miscellaneous-files。一些MINGW發行版帶有足夠的DirectX SDK來支持編譯Allegro。
X11開發庫(僅Linux/Unix)庫將成為Linux發行的一部分,但您可能必須明確安裝它們。
OpenGL開發庫(僅在Windows上可選)
插件也可能需要其他庫。由於附加子是嚴格的可選,因此不需要構建Allegro,但是如果不存在,則可能會禁用許多功能。
Windows用戶可能會從http://gnuwin32.sourceforge.net/找到其他庫中的一些預編譯二進製文件。您需要獲取bin和lib包。 bin包裝包含DLL, lib軟件包包含標題和導入庫。
Mac用戶可能會在自製,Fink或MacPorts中找到一些依賴項。 http://brew.sh/,http://www.finkproject.org/和http://www.macports.org/
Linux用戶可能已經擁有所有依賴關係,除了物理和愚蠢之外。如果您的發行版使用單獨的開發軟件包,則需要安裝它們。這些軟件包可能被命名為 *-dev或 *-devel。
這些是插件所需的依賴項:
libpng and zlib, for PNG image support (Unix and older MinGW only) Home page: http://www.libpng.org/pub/png/ Windows binaries: http://gnuwin32.sourceforge.net/packages/libpng.htm
在Windows/Mac OS X/iPhone/Android上,可以通過使用相應操作系統上的本機設施獲得PNG圖像支持,因此不需要LIBPNG。
libjpeg,用於jpeg映像支持(僅UNIX和較舊的mingw)主頁:http://www.ijijg.org/ windows binaries:http://gnuwin32.sourceforge.net/packages/jpeg.htm
在Windows/Mac OS X/iPhone/Android上,可以通過使用相應操作系統上的本機設施獲得JPEG圖像支持,因此不需要LibjPeg。
libwebp,用於WebP映像支持主頁:https://developers.google.com/speed/webp/
在Android上,可以使用操作系統的本機設施獲得WebP映像支持,因此不需要LibWebp。
freetype,用於trueType字體支持。主頁:http://freetype.sourceforge.net/ Windows二進製文件:http://gnuwin32.sourceforge.net/packages/freetype.htm
Ogg Vorbis,一種免費的有損音頻格式。 (libogg,libvorbis,libvorbisfile)主頁:http://www.vorbis.com/
Opus,免費的有損音頻編解碼器。 (libogg,libopus,libopusfile)主頁:http://www.opus-codec.org/
FLAC,免費的無損音頻編解碼器。 (libflac,libogg)主頁:http://flac.sourceforge.net/
愚蠢,iT,XM,S3M和Mod Player庫。 (libdumb)主頁:http://dumb.sourceforge.net/
開放式,3D音頻API。音頻插件可以使用開放式,儘管未使用3D功能。 http://kcat.strangesoft.net/openal.html
在Mac OS X上,需要開放式,但無論如何都應隨操作系統帶來。
在Linux和Windows上,只有在您要求的情況下才能使用OpenAL,因此沒有理由專門安裝它。
Physicsfs,提供對檔案的訪問權限,例如.zip文件。主頁:http://icculus.org/physfs/
在窗戶上,放置所有這些圖書館可能會很痛苦。當時間到來時,請參閱“ DEPS子目錄”上的readme_cmake.txt部分。
要構建文檔,您將需要Pandoc。 Pandoc的主頁是http://johnmacfarlane.net/pandoc/
從來源安裝Pandoc可能具有挑戰性,但是您可以在不構建文檔的情況下構建Allegro。
在線文檔可以在Allegro網站上找到:http://docs.liballeg.org/
使用CMAKE構建是兩個步驟的過程。在配置步驟中,CMAKE將檢測您的編譯器設置,並找到系統上安裝的庫。同時,您可以選擇自定義構建的選項。如果您不確定自己在做什麼,請在默認情況下將所有選項保留。
您必須使用單獨的構建目錄配置Allegro。例如,
mkdir build
cd build
cmake ..
如果您將Allegro配置為在源目錄中構建(即cmake .您將收到一條錯誤消息。如上所述,刪除CMakeCache.txt和CMakeFiles目錄和重新配置。
一旦配置步驟成功,您將調用另一個構建Allegro的工具。該工具取決於您的編譯器,但通常是make或IDE。
為了避免問題,請將Allegro拆除到沒有空格或其他“怪異”字符的目錄中。這是一個已知的問題。
現在閱讀readme_msvc.txt,readme_make.txt或readme_macosx.txt。