This action will force synchronization from 科学大数据开源社区/图数据库系统-gStore, which will overwrite any changes that you have made since you forked the repository, and can not be recovered!!!
Synchronous operation will process in the background and will refresh the page when finishing processing. Please be patient.
We have tested on linux server with CentOS 6.2 x86_64 and CentOS 6.6 x86_64. The version of GCC should be 4.8 or later.
|operation system||Linux, such as CentOS, Ubuntu and so on|
|disk size||according to size of dataset|
|memory size||according to size of dataset|
|glibc||version >= 2.14|
|gcc||version >= 4.8|
|g++||version >= 4.8|
|make||need to be installed|
|boost||version >= 1.54|
|readline||need to be installed|
|readline-devel||need to be installed|
|openjdk||needed if using Java api|
|openjdk-devel||needed if using Java api|
|requests||needed if using Python http api|
|pthreads||needed if using php http api|
|curl-devel||needed if using php http api|
|realpath||needed if using gconsole|
|ccache||optional, used to speed up the compilation|
|libcurl-devel||needed to be installed|
The name of some packages may be different in different platforms, just install the corresponding one in your own operation system.
To install readline and readline-devel, just type
dnf install readline-devel in Redhat/CentOS/Fedora, or
apt-get install libreadline-dev in Debian/Ubuntu. Please use corresponding commands in other systems. If you use ArchLinux, just type
pacman -S readline to install the readline and readline-devel.(so do other packages)
You do not have to install realpath to use gStore, but if you want to use the gconsole for its convenience, please do so by using
dnf install realpath or
apt-get install realpath. However, if you can not install realpath in your system, please go to modify the file Main/gconsole.cpp(just find the place using realpath command and remove the realpath command).
Our programs use regEx functions, which are provided by GNU/Linux by default.
ANTLR3.4 is used in gStore to produce lexer and parser code for SPARQL query. However, you do not need to install the corresponding antlr libraries because we have merged the libantlr3.4 in our system.
When you type
make in the root directory of the gStore project, the Java api will also be compiled. You can modify the makefile if you do not have JDK in your system. However, you are advised to install openjdk-devel in your Linux system.
To install ccache, you need to add epel repository if using CentOS, while in Ubuntu you can directly install it by
apt-get install ccache command. If you can not install ccache(or maybe you do not want to), please go to modify the makefile(just change the CC variable to g++).
If you need to use the HTTP server in gStore, then Boost Library(like boost-devel, including boost headers for developing) must be installed and the version should not be less than 1.54. Remember to check the makefile for your installed path of Boost. To use Python api, you need to install requests by
pip install requests in CentOS. To use php api, you need to install pthreads and curl in CentOS as follows:
1- get curl-devel # yum install curl-devel 2- get php # wget -c http://www.php.net/distributions/php-5.4.36.tar.gz get pthreads # wget -c http://pecl.php.net/get/pthreads-1.0.0.tgz 3- extract both # tar zxvf php-5.4.36.tar.gz # tar zxvf pthreads-1.0.0.tgz 4- move pthreads to php/ext folder # mv pthreads-1.0.0 php-5.4.36/ext/pthreads 5- reconfigure sources # ./buildconf --force # ./configure --help | grep pthreads You have to see --enable-pthreads listed. If do not, clear the buidls with this commands: # rm -rf aclocal.m4 # rm -rf autom4te.cache/ # ./buildconf --force 6- Inside php folder run configure command to set what we need: # ./configure --enable-debug --enable-maintainer-zts --enable-pthreads --prefix=/usr --with-config-file-path=/etc --with-curl 7- install php We will run make clear just to be sure that no other crashed build will mess our new one. # make clear # make # make install 8- Copy configuration file of PHP and add local lib to include path # cp php.ini-development /etc/php.ini Edit php.ini and set Include_path to be like this: Include_path = "/usr/local/lib/php" 9- Check Modules # php -m (check pthread loaded) You have to see pthreads listed 10- If pthread is not listed, update php.ini # echo "extension=pthreads.so" >> /etc/php.ini