2009/07/03

使用 Visual C++ 2008 Express 給 Windows 編譯 PCSX2

下載編譯需要的軟體
按順序下載並安裝以下軟體。

最新版 DirectX SDKhttp://go.microsoft.com/fwlink/?LinkID=71193&clcid=0x409
先灌 DirectX SDK,以後再灌 Visual Studio 就會自動將 DXSDK 的相關路徑加入到 VC++ Directories 中。

最新版 NVIDIA Cg Toolkithttp://developer.nvidia.com/object/cg_download.html
採用預設安裝路徑,灌到 C 槽。

最新版 glewhttp://glew.sourceforge.net
壓縮檔 glew-版本號-win32.zip,解壓縮到 C 槽,C 槽會有一個 glew 資料夾。

atlmfc 的檔案:請洽『 編譯 PCSX2 的 Visual C++ 2010 Express 安裝教學 』,在該篇文章的末尾記載著 atlmfc 檔案的說明。

Microsoft Visual Studio 2008 Express Editions with SP1:只需要灌其中的 Visual C++ 2008 Express Edition。當進行到 Installation Options 這一步時,取消勾選 Microsoft Siverlight Runtime 和 Microsoft SQL Server 2008 Express Edition (x86),不安裝可選元件。
VC++2008_Express_With_SP1-Installation_Options


Visual Studio 編譯步驟
設定環境變數,指定編譯後生成檔案的存放位置。我的電腦(點右鍵)» 內容 » 進階 » 環境變數,點上方的新增,新增使用者變數:變數名稱 PCSX2_TARGET_COPY;變數值 R:\PCSX2_SSE4(變數值根據個人需要指定,變數值設定的路徑是編譯後生成檔案的存放位置)為使變數設定生效,必須登出 Windows 然後再登入。
PCSX2_TARGET_COPY_variable

需要用到的檔案是 R:\PCSX2\pcsx2_suite_2008.sln。運行後會彈出幾個錯誤方框,不必理會。這是因為 Express 版的 Visual Studio 缺少功能,一些東西無法識別。唯一不能編譯的是 project setup,用來生成 msi 安裝檔。偶們都是免安裝使用 PCSX2,那個 project setup 無視之。

在 Visual Studio 視窗最上方中間位置的下拉選單中選擇目標類型 Release SSE4(這個 SSE4 是指 SSE4.1,CPU 要有支援才能選擇。根據自己 CPU 的情況也可選擇 Release SSSE3 或 Release SSE2)
Visual_C++_2008_Express_PCSX2_target_type

添加額外的 Include files 和 Library files 資料夾。某些插件的編譯需要它們。

Include files:Tools -> Options -> Projects and Solutions -> VC++ Directories,右上角的 Show directories for 選擇 Include files。按順序在末尾加入以下三行:

C:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\include
C:\Program Files\NVIDIA Corporation\Cg\include
C:\glew\include

Visual_C++_2008_Express_PCSX2_custom_Include

Library files:Tools -> Options -> Projects and Solutions -> VC++ Directories,右上角的 Show directories for 選擇 Library files。按順序在末尾加入以下三行:

C:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\lib
C:\Program Files\NVIDIA Corporation\Cg\lib
C:\glew\lib

Visual_C++_2008_Express_PCSX2_custom_Library

然後在軟體選單中選擇 build » Build Solution,編譯就會開始。
Visual_C++_2008_Express_PCSX2_build_start

編譯結束
Visual_C++_2008_Express_PCSX2_build_finish
(因為擔憂龐大的 Visual Studio 會拖慢電腦速度,所以灌在不常用的專用於玩簡體中文遊戲的簡體中文版 Windows)


技巧:如何將輸出編譯資訊的視窗 Output 固定在右方
注意看偶上一張圖,Output 視窗是整個黏在右半部份。Output 視窗預設是在底部,給它拖到右邊使之浮動出去,在標題列點右鍵選擇 Tabbed Document
Visual_C++_2008_Express_PCSX2_Output_Tabbed_document


如何只編譯 PCSX2 主程式
僅點選 pcsx2,然後點右鍵,在彈出的選單中選 Build 即可。
VC2008_Express_SP1_PCSX2_only


編譯生成的檔案
R:\PCSX2_SSE4 中的檔案都是一式兩份,兩份檔案一樣,唯一的區別是檔案名稱,一份有版本號、另一份沒有。隨便選哪一套都可以。像這樣:pcsx2.exe 和 pcsx2-r1449.exe;GSdx-SSE4.dll 和 GSdx-SSE4-r1450.dll。

需要用到的 dll:都在 pcsx2 原始碼資料夾中,位於 R:\PCSX2\bin。部分 dll 要在編譯完成後出現。將這些 dll 放在模擬器資料夾中,和 pcsx2.exe 在一起。

  1. gnu_gettext.dll:僅 Pcsx2 0.9.6 需要。
  2. w32pthreads.v4.dll:Pcsx2 0.9.7 需要、較新 SVN 的插件需要。
  3. w32pthreads.dll:僅 Pcsx2 0.9.6 需要。


PCSX2 主程式。pcsx2-rXXXX.exe,位於 R:\PCSX2_SSE4

PCSX2 插件。位於 R:\PCSX2_SSE4\plugins

沒有留言 :

張貼留言