Building QtJsonDb from Git: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Add "cleanup" tag)
(Convert ExpressionEngine links)
Line 42: Line 42:
QtJsonDb depends on libicu(optionally).
QtJsonDb depends on libicu(optionally).


==== Via "HomeBrew":http://mxcl.github.com/homebrew/ ====
==== Via [http://mxcl.github.com/homebrew/ HomeBrew] ====


You need to have HomeBrew installed at first.
You need to have HomeBrew installed at first.
Line 50: Line 50:
</code>
</code>


==== Via "MacPorts":http://www.macports.org/ ====
==== Via [http://www.macports.org/ MacPorts] ====


<code>
<code>
Line 70: Line 70:
h4. Mac OS X
h4. Mac OS X


For '''HomeBrew''' users, patch "this file":https://gist.github.com/2584990 or "download the patch directly":https://gist.github.com/gists/2584990/download .
For '''HomeBrew''' users, patch [https://gist.github.com/2584990 this file] or [https://gist.github.com/gists/2584990/download download the patch directly] .
<code>
<code>
git am~/Downloads/0001-tmp-patch-for-add-path-for-icu-on-mac-with-brew.patch
git am~/Downloads/0001-tmp-patch-for-add-path-for-icu-on-mac-with-brew.patch
</code>
</code>


For '''MacPorts''' users, patch "this file":https://gist.github.com/2659021 or "download the patch directly":https://gist.github.com/gists/2659021/download .
For '''MacPorts''' users, patch [https://gist.github.com/2659021 this file] or [https://gist.github.com/gists/2659021/download download the patch directly] .
<code>
<code>
git am ~/Downloads/0001-tmp-patch-for-add-path-for-icu-on-mac-with-macports.patch
git am ~/Downloads/0001-tmp-patch-for-add-path-for-icu-on-mac-with-macports.patch

Revision as of 08:10, 4 March 2015

This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

English

[toc align_right="yes" depth="3"]

Building QtJsonDb from Git

Introduction

Todo.

System Requirements

QtJsonDb is one of the addons of Qt 5, hence before building qtjsondb you need to build dependent modules - qtbase, qtxmlpatterns, qtjsbackend and qtdeclarative. See Building_Qt_5_from_Git for more information.

At this moment the only supported platforms for qtjsondb are Linux and Mac OS X

Linux/X11

QtJsonDb depends on libedit and libicu(optionally):

QtJsonDb dependencies on Ubuntu/Debian:

sudo apt-get install libedit-dev
sudo apt-get install libicu-dev

QtJsonDb dependencies on Mandriva/ROSA/Unity:

urpmi 'pkgconfig(libedit)'
urpmi 'pkgconfig(libicu)'

Mac OS X

QtJsonDb depends on libicu(optionally).

Via HomeBrew

You need to have HomeBrew installed at first.

brew install icu4c

Via MacPorts

port install icu

Getting the source code

First clone the QtJsonDb git repository(for example, under

~/dev/git

):

git clone git://gitorious.org/qt/qtjsondb.git qtjsondb

h3. Current temporary patch

Only for enable collation feature based on whether ICU header files are available or not on Mac.

h4. Mac OS X

For HomeBrew users, patch this file or download the patch directly .

git am~/Downloads/0001-tmp-patch-for-add-path-for-icu-on-mac-with-brew.patch

For MacPorts users, patch this file or download the patch directly .

git am ~/Downloads/0001-tmp-patch-for-add-path-for-icu-on-mac-with-macports.patch

h2. Qmakeing and building

Now start to qmake and make a shadow build:

mkdir~/build/qtjsondb
cd ~/build/qtjsondb
~/build/qt5/qtbase/bin/qmake -o Makefile ~/dev/git/qtjsondb/qtjsondb.pro

If you have seen following output, then the ICU was enabled successfully:

Configuration tests:
 icu: yes
 libedit: yes

h2. How to run examples

Launch jsondb daemon in a terminal(the first):

cd~/dev/git/qtjsondb/examples/declarative
~/build/qt5/qtbase/bin/jsondb

Run the example code in another terminal(the second):

cd~/dev/git/qtjsondb/examples/declarative/simplelistmodel
~/build/qt5/qtbase/bin/qmlscene ./simplelistmodel.qml

If want to clean the db files after running(in the first terminal):

cd~/dev/git/qtjsondb/examples/declarative rm *.db