Minor corrections to SDL build/install instructions.

This commit is contained in:
Matthew Budd 2020-10-21 22:54:31 -04:00
parent 8252a94202
commit 919a42d9fd
3 changed files with 22 additions and 10 deletions

View File

@ -1,9 +1,9 @@
To compile and install FCEUX for SDL, follow the instructions in the README-SDL.md file. To compile and install FCEUX for SDL, follow the instructions in the README file.
Users of Microsoft Visual Studio can use the solution files within the vc directory. The Windows XP toolset is required to open and build this solution. If it Users of Microsoft Visual Studio can use the solution files within the vc directory. The Windows XP toolset is required to open and build this solution. If it
is not installed, go to "Tools" > "Get Tools and Features". Select "Individual Components" and then install "C++ Windows XP Support for VS 2017 (v141) tools". is not installed, go to "Tools" > "Get Tools and Features". Select "Individual Components" and then install "C++ Windows XP Support for VS 2017 (v141) tools".
These solution files will compile FCEUX and some included libraries for full functionality. These solution files will compile FCEUX and some included libraries for full functionality.
The SDL port build tool of choice has come full circle back to Cmake. The cmake build tool will compile the new Qt version of the SDL GUI. The SDL port build tool of choice has come full circle back to Cmake. The cmake build tool will compile the new Qt version of the SDL GUI.
The scons build tool will build the older GTK based GUI which currently only builds on Linux. Building of the SDL fceux no longer supports use of the scons build tool.

26
README
View File

@ -7,7 +7,7 @@ Updated By mjbudd77
http://www.fceux.com http://www.fceux.com
Last Modified: July 12, 2020 Last Modified: October 21, 2020
Table of Contents Table of Contents
----------------- -----------------
@ -22,7 +22,7 @@ Table of Contents
1 - Requirements 1 - Requirements
---------------- ----------------
* sdl2 - Version >= 2.0 * sdl2 - Version >= 2.0 (sdl2 >= 2.8 recommended)
* cmake - Required to build fceux. * cmake - Required to build fceux.
* qt5 OR gtk3 - (qt version >= 5.11 recommended) (gtk3 >= 3.22 recommended) * qt5 OR gtk3 - (qt version >= 5.11 recommended) (gtk3 >= 3.22 recommended)
* liblua5.1 (optional) - Will statically link internally if the system cannot provide this. * liblua5.1 (optional) - Will statically link internally if the system cannot provide this.
@ -37,15 +37,19 @@ The old scons build system is no longer supported.
Fceux can be compiled and built using the cmake build system. To compile, run: Fceux can be compiled and built using the cmake build system. To compile, run:
mkdir build; cd build; mkdir build; cd build;
cmake -DCMAKE_BUILD_TYPE=Release .. # For a release build cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release .. # For a release build
To build a binary with debug information included in it: To build a binary with debug information included in it:
cmake -DCMAKE_BUILD_TYPE=Debug .. cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ..
The Qt version of the GUI builds by default and this is the preferred GUI for use. The Qt version of the GUI builds by default and this is the preferred GUI for use.
For those who must have GTK/Gnome style, For those who must have GTK/Gnome style,
the GTK version of the GUI can be selected to build with: the GTK version of the GUI can be selected to build with:
cmake -DCMAKE_BUILD_TYPE=Release -DGTK=1 .. # Release build using GTK GUI cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DGTK=1 .. # Release build using GTK GUI
The Qt version GUI by far exceeds the GTK gui in capability and performance.
I HIGHLY RECOMMEND USING THE Qt GUI instead of the GTK. See the TODO-SDL file for
a capability matrix that compares what the two GUIs can do.
To do the actual compiling: To do the actual compiling:
make make
@ -58,9 +62,8 @@ After a sucessful compilation, the fceux binary will be generated to
sudo make install sudo make install
You can optionally define a install prefix when running cmake from the previous step: By default cmake will use an installation prefix of /usr/local.
The recommended installation prefix is /usr (this is where the installed fceux.desktop file expects everything to be)
cmake -DCMAKE_INSTALL_PREFIX=/usr/local install
You can choose to install the lua scripts (located in output/luaScripts) to a directory of your choosing: You can choose to install the lua scripts (located in output/luaScripts) to a directory of your choosing:
@ -88,6 +91,13 @@ OpenGL options:
For Linux builds, the OpenGL library preference can be either GLVND or LEGACY (default). For Linux builds, the OpenGL library preference can be either GLVND or LEGACY (default).
To use GLVND OpenGL, add a -DGLVND=1 on the cmake command line. To use GLVND OpenGL, add a -DGLVND=1 on the cmake command line.
Qt Styling Options:
The Qt GUI can use custom Qt widget styling by providing it a Qt stylesheet file. At startup, the GUI will look
for an environment variable named FCEUX_QT_STYLESHEET that must contain the full path to the file. If the variable
is defined and the file is readable by the program, then the styling settings will be used by the GUI.
Bash Shell Setup Example:
export FCEUX_QT_STYLESHEET=/home/me/myQt.stylesheet
5 - LUA Scripting 5 - LUA Scripting
----------------- -----------------
FCEUX provides a LUA 5.1 engine that allows for in-game scripting capabilities. LUA is enabled either way. It is just a matter of whether LUA is statically linked internally or dynamically linked to a system library. FCEUX provides a LUA 5.1 engine that allows for in-game scripting capabilities. LUA is enabled either way. It is just a matter of whether LUA is statically linked internally or dynamically linked to a system library.

View File

@ -4,6 +4,8 @@ Priorities
* GTK GUI was not cross-platform. A Qt5 version of the GUI has been created to meet this need. * GTK GUI was not cross-platform. A Qt5 version of the GUI has been created to meet this need.
I will keep the GTK GUI around for Linux users who prefer it, but when it comes to adding new features I will keep the GTK GUI around for Linux users who prefer it, but when it comes to adding new features
the Qt GUI is where I plan to add them first (if at all). the Qt GUI is where I plan to add them first (if at all).
* The Qt GUI has by far exceeded the capabilities of the older GTK version. Below is a GUI capability
matrix showing the differences between the two. I HIGHLY RECOMMEND USING THE Qt GUI.
* Code cleanup. Lots of compiler warnings with newer GCC. Maybe I'm OCD... but these warnings bother me. * Code cleanup. Lots of compiler warnings with newer GCC. Maybe I'm OCD... but these warnings bother me.
Features Features