windows - 如何将 Windows 上的 PCSXR 源代码编译成可执行文件?

标签 windows dll build open-source executable

TLDR 在底部。

我一直在运行我在 codeplex.com 上找到的名为 PCSXR 的应用程序.但是,我认为 Windows 更新已导致程序无法正常运行或缺少某些 Windows Visual Basic 附加组件,因为在我清理已安装的 Windows 10 以修复恢复无法修复的问题之前一切正常。

我试过版本 1.9.92可执行,但它在播放动画时有崩溃问题。

版本1.9.93最稳定的,我用的,再也不能读取文件夹里的DLL插件了。使其无法使用。

四处浏览后。我找到了 this发布此人使用 Dev C++ 编译源代码解决了问题。我试图构建它,但我不断收到抛出的错误。我通过将其设置为 32 位编译解决了错误的体系结构,但其他错误阻止了它的编译。

在谷歌搜索操作方法并与其他一些程序员交谈之后。我一直在使用不同的工具来编译它。 Code Blocks、Dev C++、MinGW 和 Windows 上运行 Bash 的旧 Git 程序。我什至最终缺少 header 中的 config.h,甚至缺少 winres.h。

我设法通过带有 Ubuntu 的 WSL(Linux 的 Windows 子系统)编译它,通过 VcXsrv 的 XFCE4 桌面通过窗口显示 XFCE4。 PCSXR 启动,有插件,但运行时崩溃。据我所知,错误是由于 WSL 不支持声音造成的。所以WSL失败了。

我已经尝试过 Ubuntu“Try It”CD 环境,但根本无法编译。

最新版本的 VirutalBox 不再工作,因为他们禁用它在我的机器上工作,因为它没有 BIOS 虚拟化设置。


长见识

我一直在关注他们的节目 documentation但对于 Windows 用户来说并不是很详细。

所以我的问题是:如何在详细步骤中从 updated source code here 构建 PCSXR或 1.9.93 source here进入一个工作的 Windows 可执行文件及其 DLL 插件工作?我需要什么程序,我要输入什么,什么设置,我在哪里可以找到丢失的文件等。

我知道这可能不是这里最好的问题,但我整整两天都在研究这个问题,谷歌搜索和询问。

我使用的是 Windows 10,AMD CPU,64 位,不支持 BIOS 虚拟化。

最佳答案

我在 this 上按照这些步骤设法做到了论坛帖子:

You need Dev C++ 5.11.

1).Go to File>Open>Directory of Pcsxr>win32>pcsxr.dev

2).Under Project select pcsxr. Right click and select project options.

3.In Project Options select compiler. Set Base compiler to "TDM-GCC 4.9.2 32bit Release" then click ok.

4).In the main menu of Dev C++ 5.11 look for Execute. Select Compile.

5).Wait for it to compile. If you were successful there should a pcsxr.exe in pcsxr source directory>win32.

按照步骤操作并尝试所有可用源代码的最新版本。这是我之后发布的研究结果。

Thanks for the reply. It really helped a lot.

I've tried the 1.9.93 beta source code "pcsxr-1.9.93.tar.bz2" (extracted with 7zip) and got a compile error about "#include " not found.

I've tried the 1.9.94 alpha source code "pcsxr-1.9.94.zip" and it compiled successfully. I got a "pcsxr\libpcsxcore\gte_divider.h" missing error when loading the dev file in win32 folder but it seems to work okay.

I've tried the up-to-date source code (last modification Feb 18, 2017) and it compiled successfully. I got a "pcsxr\libpcsxcore\gte_divider.h" missing error when loading the dev file in win32 folder but it seems to work also. The background logo that covers the main window seems to be blank grey until I start a game.

I solved the winres.h issue by getting this missing Windows h Sample file from github here: https://github.com/Microsoft/Window...les/Win7Samples/winui/tsf/tsfcompart/winres.h and just added it to the root of the project folder. I had to replace '#include ' with '#include "winres.h"'.

I don't know about the built-in plugins source code. Some don't have a dev file and they always throw errors when compiling. I've managed to add working third party ones from emulator zone and the ones from 1.9.93 beta release "pcsxr-1.9.93-win32.zip" and managed to get 1.9.93 working great.

关于windows - 如何将 Windows 上的 PCSXR 源代码编译成可执行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47879141/

相关文章:

java - <dependency> 标签中的 <type> 标签是什么意思?

windows - 在 Weblogic 中使用本地版本的 ANT 和 JUNIT 运行 ant build

c++ - 无法使 wx-widget 与 netbeans 一起工作

linux - DBD-Oracle(1.74 或 1.76)在 win10 wsl ubuntu 上带有 oracle instantclient 11.2

delphi - 使用 DLL 注入(inject)在另一个进程中附加菜单项

android - 在 Xamarin Android 名称中绑定(bind)一个 .AAR 不存在

php - 什么二进制文件 - 线程安全/非线程安全,与 PHP/WAMP 一起使用?

c# - 为什么我在 Windows 10 UWP 上收到 "package could not be registered"部署错误?

c - 链接器如何解析动态加载库中的重复符号?

maven - 如何在程序集 JAR 中添加本地依赖项