The most detailed instructions can be found at this page: http://ribtoks.github.io/xpiks/blog/2014/building-xpiks-alone
This space was intentionally left blank.
Simplified instructions:
Prepare the source tree
- git clone Xpiks repo
git submodule init
&git submodule update --recursive
- rename
tinyAES/aes.c
totinyAES/aes.cpp
- ensure you have
git
available in your PATH
Mac OS X / Windows : build third-parties
Zlib:
- [windows] you will also need to download zlib 1.2.11 and extract it in the
src/
directory - [windows] open project
src/zlib-project/zlib.pro
in Qt Creator, executeRun qmake
, executeBuild
- [windows] copy built library (e.g.
z.lib
) from the build directory to thesrc/libs
directory
Hunspell:
- download Hunspell 1.6.0 from http://hunspell.sourceforge.net/ and extract it in the
src/
directory - open project
src/hunspell/hunspell.pro
in Qt Creator, executeRun qmake
, executeBuild
- copy built library (e.g.
libhunspell.a
) from the build directory to thesrc/libs
directory
cpp-libface:
- follow instructions in
src/cpp-libface/README.md
to build libface - copy built library to
src/libs
directory
ssdll:
- follow instructions in
src/ssdll/README.md
to build ssdll - copy built library to
src/libs
directory
Quazip:
- open project
src/quazip/quazip/quazip.pro
in Qt Creator, executeRun qmake
, executeBuild
- copy built library (e.g.
quazip.lib
andquazip.dll
) from the build directory to thesrc/libs
directory
LibCurl:
- [windows] do
git clone https://github.com/blackrosezy/build-libcurl-windows.git
and executebuild.bat
- [windows] copy contests of
lib/dll-debug-x64
contents to thesrc/libs/
directory - [windows] build exiv2 library (see steps below)
OS X build of exiv2 library
- open Terminal in the directory of exiv2 sources and do the following
mkdir build-Debug && cd build-Debug
/Applications/CMake.app/Contents/bin/cmake .. -DEXIV2_ENABLE_SHARED=off -DCMAKE_BUILD_TYPE=Debug -DCMAKE_OSX_DEPLOYMENT_TARGET=10.7 -DCMAKE_CXX_STANDARD=11
make
Visual Studio 2015 build of exiv2 library
- download exiv2 v0.25 library from http://www.exiv2.org/ and extract it somewhere
- download expat-2.1.1 library from https://sourceforge.net/projects/expat/ and extract it on same level as exiv2
- rename directory
expat-2.1.1/
toexpat\
- open
msvc2005\exiv2.sln
and upgrade all projects - from each project remove file
localtime.c
- open file
include\exiv2\exv_msvs.h
and enable unicode support, disable png, curl and ssh (alternatively, you can overwrite this file with the one in the Xpiks repository via pathsrc/exiv2-0.25/include/exiv2/exv_msvs.h
) - in Visual Studio select
"Build" -> "Batch build"
and mark all DebugDLL and ReleaseDLL builds for your platform (x64 or x86) - press "Build"
- copy build artifacts (
libexiv2.dll
,libexiv2.lib
,libexpat.dll
,libexpat.lib
) tosrc/libs
directory in Xpiks repository
Manual build
- install Qt 5.6 or later from official website (or from repository in case of Linux)
- [linux] install development packages for
libcurl
,hunspell
,quazip
,zlib
,libexiv
- [linux] install
exiftool
(this is not necessary since Xpiks 1.3.1) andexpat
(this is necessary since Xpiks 1.3.1) - open main project in Qt Creator, execute
Run qmake
, executeBuild
- you can open, build and run tests project (
src/xpiks-tests/xpiks-tests.pro
) additionally
If you want to create Xpiks executable for everyday usage, before each Run qmake
step described below, select Release
in Qt Creator. Select Debug
(the default) in all other cases.
Linux package build
This chapter assumes that you have installed generic development packages for your OS.
Additional requirements
In some cases you neet to install libcurl-devel
, hunspell-devel
, quazip-devel
, libexiv-devel
packages (they can have slightly different names in your distribution) if it is not installed as a build requirement.
Debian package build
- Install build dependecies from repository (QT)
- cd to xpiks-qt subdirectory
debuild -i -us -uc -b
OpenSUSE RPM build
- Install rpmbuild.
mkdir -p ~/rpmbuild/{RPMS,SRPMS,SPECS,BUILD,BUILDROOT,SOURCES}
tar -czf xpiks-qt.tar.gz xpiks-qt/ tiny-aes/ cpp-libface/ libs/ ssdll/
- Copy this source tarball in
~/rpmbuild/SOURCES
- Copy the the spec from
xpiks-qt/RPM
folder to~/rpmbuild/SPECS
rpmbuild -ba ~/rpmbuild/SPECS/xpiks.spec
- It will complain about missing dependecies, you have to install them as well
More
Xpiks uses English dictionaries from http://cgit.freedesktop.org/libreoffice/dictionaries/tree/. In Windows they are stored in the dict/
subdirectory, in OS X they are in the Resources/
directory of a bundle.