milvus/cpp
starlord e8c4390327 archive config
Former-commit-id: c54cb683d0eae72f9eaa82c6159dc6bb411d6edf
2019-07-13 23:33:49 +08:00
..
cmake fix mysql scoped connection concurrency issue 2019-06-26 13:51:56 +08:00
conf archive config 2019-07-13 23:33:49 +08:00
scripts remove old names from source code 2019-06-14 17:29:29 +08:00
src archive config 2019-07-13 23:33:49 +08:00
thirdparty fix mysql scoped connection concurrency issue 2019-06-26 13:51:56 +08:00
unittest alter server_config 2019-07-13 23:28:26 +08:00
.gitignore update .gitignore 2019-06-17 15:39:11 +08:00
build.sh MS-104 Fix unittest lcov execution error 2019-06-23 18:38:55 +08:00
CHANGELOG.md change CHANGELOG 2019-07-13 23:30:50 +08:00
CMakeLists.txt update 2019-06-25 21:09:33 +08:00
coverage.sh MS-104 - Fix unittest lcov execution error 2019-06-23 19:25:03 +08:00
LICENSE.txt Add LICENSE.txt and RELEASE.md 2019-04-14 20:12:34 +08:00
mysqlNotes passed db_tests (probably) 2019-06-21 18:30:45 +08:00
README.md Add MySQL 2019-06-24 16:44:05 +08:00
RELEASE.md Add LICENSE.txt and RELEASE.md 2019-04-14 20:12:34 +08:00
start_server.sh remove old names from source code 2019-06-14 17:29:29 +08:00
stop_server.sh remove old names from source code 2019-06-14 17:29:29 +08:00
version.h.macro remove old names from source code 2019-06-14 17:29:29 +08:00

Compilation

Step 1: install necessery tools

Install MySQL

centos7 : 
    yum install gfortran qt4 flex bison mysql-devel
    
ubuntu16.04 : 
    sudo apt-get install gfortran qt4-qmake flex bison libmysqlclient-dev

If libmysqlclient_r.so does not exist after installing MySQL Development Files, you need to create a symbolic link:

sudo ln -s /path/to/libmysqlclient.so /path/to/libmysqlclient_r.so

Step 2: build(output to cmake_build folder)

cmake_build/src/milvus_server is the server

cmake_build/src/libmilvus_engine.a is the static library

cd [sourcecode path]/cpp
./build.sh -t Debug
./build.sh -t Release
./build.sh -l -t Release # Build license version(only available for Release)

If you encounter the following error when building: protocol https not supported or disabled in libcurl

  1. Install libcurl4-openssl-dev

  2. Install cmake 3.14:

    ./bootstrap --system-curl 
    make 
    sudo make install
    

To build unittest:

./build.sh -u
or
./build.sh --unittest

Launch server

Set config in cpp/conf/server_config.yaml

Then launch server with config: cd [build output path] start_server.sh stop_server.sh

Launch test_client(only for debug)

If you want to test remote api, you can build test_client. test_client use same config file with server:

cd [build output path]/test_client
test_client -c [sourcecode path]/cpp/conf/server_config.yaml

License Generate

Use get_sys_info to get system info file.

./get_sys_info                  # system.info will be generated

Use license_generator to generate license file.

./license_generator -s system.info -l system.license -b 2019-05-15 -e 2019-08-14                 

Copy the license file to path assigned by license_path in server config file.