d7a317efc7
Place public: in the correct location. |
||
---|---|---|
browser_ext | ||
dependencies | ||
docs | ||
forms | ||
lib | ||
resources | ||
src | ||
.clang-format | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
chatterino.pro | ||
ISSUE_TEMPLATE.md | ||
LICENSE | ||
README.md |
Chatterino 2
Chatterino 2 is the second installment of the Twitch chat client series "Chatterino". For now you can check out Chatterino 1 at https://chatterino.com.
Code style
The code is normally formated using clang format in Qt Creator. .clang-format contains the style file for clang format.
To setup automatic code formating with QT Creator, see this guide.
Building
Before building run git submodule update --init --recursive
to get required submodules.
Windows
Using Qt Creator
Visual Studio 2017
- Install Visual Studio 2017 and select "Desktop development with C++" and "Universal Windows Platform development.
Boost
- Visual Studio 2017 64-bit: https://dl.bintray.com/boostorg/release/1.66.0/binaries/boost_1_66_0-msvc-14.1-64.exe
- When prompted, install boost to C:\local\boost
- When the installation is finished, go to C:\local\boost and rename the "lib64-msvc-14.1" folder to "lib"
OpenSSL
For our websocket library, we need OpenSSL 1.1
- Download OpenSSL development library: https://slproweb.com/download/Win64OpenSSL-1_1_0h.exe
- When prompted, install openssl to C:\local\openssl
- When prompted, copy the OpenSSL DLLs to "The OpenSSL binaries (/bin) directory"
For Qt SSL, we need OpenSSL 1.0
- Download OpenSSL light: https://slproweb.com/download/Win64OpenSSL_Light-1_0_2o.exe
- When prompted, install it anywhere
- When prompted, copy the OpenSSL DLLS to "The OpenSSL binaries (/bin) directory"
- Copy the OpenSSL 1.0 files from its /bin folder to C:/local/bin (You will need to create the folder)
- Then copy the OpenSSL 1.1 files from its /bin folder to C:/local/bin (Overwrite any duplicate files)
- Add C:/local/bin to your path folder (Follow guide here if you don't know how to do it: https://www.computerhope.com/issues/ch000549.htm#windows8 )
Qt
- Download Qt: https://www.qt.io/download
- Select "Open source" at the bottom of this page
- Then select "Download"
When prompted which components to install:
- Under the latest Qt version:
- Select MSVC 2017 64-bit (or MSVC 2015 64-bit if you still use Visual Studio 2015)
- Optionally, enable Qt WebEngine
- Under Tools:
- Select Qt Creator, and Qt Creator CDB Debugger Support
Windows (Using MSYS2)
Note: This guide is currently out of date and will not work as is. Note: This build will have some features missing from the build.
Building using MSYS2 can be quite easier process. Check out MSYS2 at msys2.org.
Be sure to add -j <number of threads>
as a make argument so it will use all your cpu cores to build. example setup
You can also add -o2
to optimize the final binary size but increase compilation time, and add -pipe
to use more ram in compilation but increase compilation speed
- open appropriate MSYS2 terminal and do
pacman -S mingw-w64-<arch>-boost mingw-w64-<arch>-qt5 mingw-w64-<arch>-rapidjson
where<arch>
isx86_64
ori686
- go into the project directory
- create build folder
mkdir build && cd build
qmake .. && mingw32-make
Linux
Ubuntu 16.04.2 LTS
most likely works the same for other Debian-like distros
- install QT Creator
sudo apt-get install qtcreator qtmultimedia5-dev
- install boost-dev
sudo apt-get install libboost-dev
- open
chatterino.pro
with QT Creator and build
Ubuntu 18.04
most likely works the same for other Debian-like distros
- Install dependencies (and the C++ IDE Qt Creator)
sudo apt install qtcreator qtmultimedia5-dev libqt5svg5-dev libboost-dev
- Install rapidjson to
/usr/local/
like this: From the Chatterino2 root folder:sudo cp -r lib/rapidjson/include/rapidjson /usr/local/include
. If you want to install it to another place, you have to make sure it's in the chatterino.pro include path - open
chatterino.pro
with QT Creator and build
Arch Linux
install chatterino2-git from the aur or build manually as follows:
sudo pacman -S qt5-base qt5-multimedia qt5-svg gst-plugins-ugly gst-plugins-good boost rapidjson
- go into project directory
- create build folder
mkdir build && cd build
qmake .. && make
Mac OSX
- install Xcode and Xcode Command Line Utilites
- start Xcode, settings -> Locations, activate your Command Line Tools
- install Qt Creator
- install brew https://brew.sh/
brew install boost openssl rapidjson
- build the project using Qt Creator
If the Project does not build at this point, you might need to add additional Paths/Libs, because brew does not install openssl and boost in the common path. You can get their path using
brew info openssl
brew info boost
The lines which you need to add to your project file should look similar to this
INCLUDEPATH += /usr/local/opt/openssl/include
LIBS += -L/usr/local/opt/openssl/lib
INCLUDEPATH += "/usr/local/Cellar/boost/1.67.0_1/include"
LIBS += -L"/usr/local/Cellar/boost/1.67.0_1/lib"
Test 1