User:AlvinWong/Qt Frontend

From DeSmuME
(Difference between revisions)
Jump to: navigation, search
Line 52: Line 52:
  
 
The build currently relies on the glib static library which is included in the Windows source tree but in 7z format. You may need to compile the Windows version with Visual Studio once, or manually extract the glib static library to the .lib directory.
 
The build currently relies on the glib static library which is included in the Windows source tree but in 7z format. You may need to compile the Windows version with Visual Studio once, or manually extract the glib static library to the .lib directory.
 +
 +
== Notes ==
 +
 +
To compile a static Qt library build on Windows, I used the following configure command:
 +
 +
configure -opensource -static -prefix ..\out\msvc2012-x64-static -debug-and-release -ltcg -no-compile-examples -mp -nomake tests -nomake examples -confirm-license
  
 
== Developing ==
 
== Developing ==
  
 
If you want to help, please contact '''alvinhochun''' either on the forum or the IRC channel.
 
If you want to help, please contact '''alvinhochun''' either on the forum or the IRC channel.

Revision as of 11:28, 13 March 2014

The Qt frontend is currently a work-in-progress frontend being developed. The Qt frontend is not only intended to be yet another alternative frontend on Linux, but also an alternative frontend on Windows and Mac OS X. It can be viewed as an attempt to create a unified frontend for all systems.

Nevertheless, making it work on Linux still has the highest priority.

Contents

Source Code

The source code is currently on Bitbucket: https://bitbucket.org/alvinhochun/desmume-qt-frontend

The first version of the source code will be committed to the official svn repository some time later.

Development Status

The basic interface is already working and tested on both Linux (g++ x64) and Windows (msvc2010/Windows SDK 7.1 x86, msvc2012 x64). Below is a list of things:

Working Things

  1. Main game window
  2. ROM opening via file open dialog
  3. Pausing/unpausing
  4. Screen display with scaling
  5. Video filters
  6. Audio output
  7. Hard-coded keyboard input

TODO

  1. Build system cleanup
  2. Control configuration
  3. Option saving
  4. Command-line arguments processing
  5. Alternative screen rendering with OpenGL (low priority)
  6. Off-screen OpenGL 3D renderer (low priority)
  7. Something else (mixed priorities)

Compilation

Qt Version

The required minimum version of Qt is 5.2.1. As of 2014-03-13, it is the latest official version.

Compiling

The source code currently contains a qmake .pro file which can be opened by Qt Creator. You should be able to compile within Qt Creator directly.

Compilation has currently been tested on Linux x64 with g++ 4.7.2, and on Windows with msvc2010/Windows SDK 7.1 x86 and msvc2012 x64.

Linux

The qmake files currently hard-coded some defines, linker flags and include paths, which is directly copied from the compilation output of a normal Linux build. You may need to change them in order to compile and link the executable correctly.

Windows (msvc)

The build currently relies on the glib static library which is included in the Windows source tree but in 7z format. You may need to compile the Windows version with Visual Studio once, or manually extract the glib static library to the .lib directory.

Notes

To compile a static Qt library build on Windows, I used the following configure command:

configure -opensource -static -prefix ..\out\msvc2012-x64-static -debug-and-release -ltcg -no-compile-examples -mp -nomake tests -nomake examples -confirm-license

Developing

If you want to help, please contact alvinhochun either on the forum or the IRC channel.

Personal tools