From bae5ef536386096a6831f1e91d04904f79d5a892 Mon Sep 17 00:00:00 2001 From: David Skoland Date: Wed, 26 Dec 2018 18:17:53 +0100 Subject: [PATCH 1/4] it's the official version, no need for numbers --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5e6adb2..0416e4a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Attorney Online 2 +# Attorney Online [Attorney Online](https://aceattorneyonline.com) is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format. From 452cffcac3e3c37049470fb24749729e3260cc75 Mon Sep 17 00:00:00 2001 From: David Skoland Date: Wed, 26 Dec 2018 18:44:26 +0100 Subject: [PATCH 2/4] added building instructions --- README_BUILD.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 README_BUILD.md diff --git a/README_BUILD.md b/README_BUILD.md new file mode 100644 index 0000000..6ede9f5 --- /dev/null +++ b/README_BUILD.md @@ -0,0 +1,41 @@ +### Dependencies + +This program has five main dependencies + +* Qt 5.6+ (https://www.qt.io/download) +* BASS (http://www.un4seen.com/bass.html) +* BASS Opus Plugin (http://www.un4seen.com/bass.html#addons) +* Discord Rich Presence (https://github.com/discordapp/discord-rpc/releases) +* Qt Apng Plugin (https://github.com/Skycoder42/QtApng/releases) + +### How to build dynamically (the easy way) + +What you want to do is first download the latest version of Qt from the first link. (get the prebuilt dynamic version) +If you're on Ubuntu, go to the scripts/ folder and run configure_ubuntu.sh. This should fetch all the required dependencies automatically. +If not, go to each one of the links above and find the right dynamic library for your platform: +* Windows: .dll +* Linux: .so +* Mac: .dylib + +And put them in BOTH lib/ and the repository root (lib/ is required for linking and root is required for runtime) + +Launch Qt creator, open the .pro file and try running it. Ask in the Discord if you're having issues: https://discord.gg/wWvQ3pw + +### How to build statically (the hard way) + +You're gonna have a bad time. + +Building statically means you can distribute the final program without needing to pack alongside a lot of dynamic libraries. +This is a tricky process and is not recommended unless you know what you're doing. + +The general idea is to first build the entirety of Qt statically. To do this, check the desired version under "Sources" in the Qt maintenance tool. +After this is done, follow these instructions: https://dimitris.apeiro.gr/2015/06/24/build-a-static-qt5-for-windows-by-compiling/ +This guide is specifically for Windows, but Qt is cross-platform and you should be good with or without some minor adjustments to the guide. +After this, you need to configure the project to use the static version of qmake (for this, look into "Qt creator build configuration") + +BASS and BASS Opus only comes as dynamic libraries and is not open-source. That means you can't link it statically in the program. + +For Discord RPC, you can try downloading the source and configuring it to compile to a static library. You're gonna have to figure out how, though. + +The same goes for Qt Apng Plugin. This guide does not go into detail how to configure each of these to build a static library. + From 44dfdb89962b6fce76ac8f7f23f3ec0d19f2cf2c Mon Sep 17 00:00:00 2001 From: David Skoland Date: Wed, 26 Dec 2018 18:48:18 +0100 Subject: [PATCH 3/4] clarified readme build doc --- README_BUILD.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/README_BUILD.md b/README_BUILD.md index 6ede9f5..fb45678 100644 --- a/README_BUILD.md +++ b/README_BUILD.md @@ -28,14 +28,15 @@ You're gonna have a bad time. Building statically means you can distribute the final program without needing to pack alongside a lot of dynamic libraries. This is a tricky process and is not recommended unless you know what you're doing. -The general idea is to first build the entirety of Qt statically. To do this, check the desired version under "Sources" in the Qt maintenance tool. +First, you need to build the entirety of Qt statically. To do this, check the desired version under "Sources" in the Qt maintenance tool. After this is done, follow these instructions: https://dimitris.apeiro.gr/2015/06/24/build-a-static-qt5-for-windows-by-compiling/ This guide is specifically for Windows, but Qt is cross-platform and you should be good with or without some minor adjustments to the guide. -After this, you need to configure the project to use the static version of qmake (for this, look into "Qt creator build configuration") +Note that this **is** a computationally heavy process and will take a lot of time on a slow computer. +After this, you need to configure the project to use the static version of qmake (see http://doc.qt.io/qtcreator/creator-build-settings.html) BASS and BASS Opus only comes as dynamic libraries and is not open-source. That means you can't link it statically in the program. For Discord RPC, you can try downloading the source and configuring it to compile to a static library. You're gonna have to figure out how, though. -The same goes for Qt Apng Plugin. This guide does not go into detail how to configure each of these to build a static library. +The same goes for Qt Apng Plugin. This guide does not go into detail how to configure each of these to build a static library. You may have to add Q_IMPORT_PLUGIN(ApngImagePlugin); in main.cpp. See more about importing static plugins here: http://doc.qt.io/qt-5/plugins-howto.html#static-plugins From fa24d4bd865a240f3c884dcb74253e9aed7fd072 Mon Sep 17 00:00:00 2001 From: David Skoland Date: Wed, 26 Dec 2018 18:53:23 +0100 Subject: [PATCH 4/4] discord-rpc actually has prebuilt static libraries --- README_BUILD.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README_BUILD.md b/README_BUILD.md index fb45678..da13bdc 100644 --- a/README_BUILD.md +++ b/README_BUILD.md @@ -36,7 +36,7 @@ After this, you need to configure the project to use the static version of qmake BASS and BASS Opus only comes as dynamic libraries and is not open-source. That means you can't link it statically in the program. -For Discord RPC, you can try downloading the source and configuring it to compile to a static library. You're gonna have to figure out how, though. +For Discord RPC, you can download prebuilt static libraries for your platform. Just put them in lib/. -The same goes for Qt Apng Plugin. This guide does not go into detail how to configure each of these to build a static library. You may have to add Q_IMPORT_PLUGIN(ApngImagePlugin); in main.cpp. See more about importing static plugins here: http://doc.qt.io/qt-5/plugins-howto.html#static-plugins +For Qt Apng Plugin, you need to compile it statically. This guide does not go into detail how to configure this to build a static library. You may have to add Q_IMPORT_PLUGIN(ApngImagePlugin); in main.cpp. See more about importing static plugins here: http://doc.qt.io/qt-5/plugins-howto.html#static-plugins