You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ignite.apache.org by GitBox <gi...@apache.org> on 2020/09/23 21:12:28 UTC

[GitHub] [ignite] dmagda commented on a change in pull request #8269: IGNITE-13459 Document new building process of Ignite C++ (CMake)

dmagda commented on a change in pull request #8269:
URL: https://github.com/apache/ignite/pull/8269#discussion_r493895769



##########
File path: docs/_docs/includes/cpp-linux-build-prerequisites.adoc
##########
@@ -0,0 +1,31 @@
+The following packages should be installed:

Review comment:
       "Should" or "need to be" (aka. must) installed?
   
   Should imply that something is optional.

##########
File path: docs/_docs/SQL/ODBC/odbc-driver.adoc
##########
@@ -201,21 +201,38 @@ As a result, `ignite-odbc-amd64.msi` and `ignite-odbc-x86.msi` files should appe
 
 On a Linux-based operating system, you will need to install an ODBC Driver Manager of your choice to be able to build and use the Ignite ODBC Driver. The ODBC Driver has been tested with link:http://www.unixodbc.org[UnixODBC].
 
-Additionally, you will need `GCC`, `G++`, and `make` to build the driver and its dependencies.
+==== Prerequisites
+include::includes/cpp-linux-build-prerequisites.adoc[]
 
-Once all the above mentioned are installed, you can build the Ignite ODBC driver:
+NOTE: JDK is needed currently only for building, odbc driver binary doesn't depend on it.

Review comment:
       I would slightly rephrase the sentence:
   
   * The JDK is used only during the build process and not being by the ODBC driver itself"

##########
File path: docs/_docs/quick-start/cpp.adoc
##########
@@ -51,30 +44,62 @@ For information about the {cpp} thin client, see link:thin-clients/cpp-thin-clie
 On unix systems, you can use the command line to build and run the examples included in the Ignite distribution.
 
 === Prerequisites
-The following packages should be installed:
-- C++ compiler
-- libssl
-- autotools
-- automake
-- libtool
+include::includes/cpp-linux-build-prerequisites.adoc[]
 
 === Building C++ Ignite
 
-. Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.
-. `cd {IGNITE_HOME}/platforms/cpp`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `make`
-
-=== Running the Thick Client Example
-
-. `cd {IGNITE_HOME}/platforms/cpp/examples`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `cd put-get-example`
-. `make`
-. `./ignite-put-get-example`
-
+- Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.
+- Create build directory for cmake. We'll refer to this as `{CPP_BUILD_DIR}`

Review comment:
       "Create a build directory for CMake"

##########
File path: docs/_docs/quick-start/cpp.adoc
##########
@@ -51,30 +44,62 @@ For information about the {cpp} thin client, see link:thin-clients/cpp-thin-clie
 On unix systems, you can use the command line to build and run the examples included in the Ignite distribution.
 
 === Prerequisites
-The following packages should be installed:
-- C++ compiler
-- libssl
-- autotools
-- automake
-- libtool
+include::includes/cpp-linux-build-prerequisites.adoc[]
 
 === Building C++ Ignite
 
-. Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.
-. `cd {IGNITE_HOME}/platforms/cpp`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `make`
-
-=== Running the Thick Client Example
-
-. `cd {IGNITE_HOME}/platforms/cpp/examples`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `cd put-get-example`
-. `make`
-. `./ignite-put-get-example`
-
+- Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.
+- Create build directory for cmake. We'll refer to this as `{CPP_BUILD_DIR}`
+- Do the folowing:
+
+[tabs]
+--
+tab:Ubuntu[]
+[source,bash,subs="attributes,specialchars"]
+----
+cd ${CPP_BUILD_DIR}
+cmake -DCMAKE_BUILD_TYPE=Release -DWITH_ODBC=ON -DWITH_THIN_CLIENT=ON ${IGNITE_HOME}/platforms/cpp 
+make
+sudo make install
+----
+
+tab:CentOS/RHEL[]
+[source,shell,subs="attributes,specialchars"]
+----
+cd ${CPP_BUILD_DIR}
+cmake3 -DCMAKE_BUILD_TYPE=Release -DWITH_ODBC=ON -DWITH_THIN_CLIENT=ON ${IGNITE_HOME}/platforms/cpp 
+make 
+sudo make install
+----
+
+--
+
+
+=== Building and running the Thick Client Example
+- Create build directory for cmake. We'll refer to this as `{CPP_EXAMPLES_BUILD_DIR}`

Review comment:
       Same feedback as above, you need to put articles in some places. Just adjust the way you would adjust the instructions above.

##########
File path: docs/_docs/quick-start/cpp.adoc
##########
@@ -51,30 +44,62 @@ For information about the {cpp} thin client, see link:thin-clients/cpp-thin-clie
 On unix systems, you can use the command line to build and run the examples included in the Ignite distribution.
 
 === Prerequisites
-The following packages should be installed:
-- C++ compiler
-- libssl
-- autotools
-- automake
-- libtool
+include::includes/cpp-linux-build-prerequisites.adoc[]
 
 === Building C++ Ignite
 
-. Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.
-. `cd {IGNITE_HOME}/platforms/cpp`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `make`
-
-=== Running the Thick Client Example
-
-. `cd {IGNITE_HOME}/platforms/cpp/examples`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `cd put-get-example`
-. `make`
-. `./ignite-put-get-example`
-
+- Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.
+- Create build directory for cmake. We'll refer to this as `{CPP_BUILD_DIR}`
+- Do the folowing:

Review comment:
       "Use the commands below to build and install Ignite C++" - or you can use a shorter version. The point is that I would say that the reader needs to "use the commands" to do X.

##########
File path: docs/_docs/SQL/ODBC/odbc-driver.adoc
##########
@@ -201,21 +201,38 @@ As a result, `ignite-odbc-amd64.msi` and `ignite-odbc-x86.msi` files should appe
 
 On a Linux-based operating system, you will need to install an ODBC Driver Manager of your choice to be able to build and use the Ignite ODBC Driver. The ODBC Driver has been tested with link:http://www.unixodbc.org[UnixODBC].
 
-Additionally, you will need `GCC`, `G++`, and `make` to build the driver and its dependencies.
+==== Prerequisites
+include::includes/cpp-linux-build-prerequisites.adoc[]
 
-Once all the above mentioned are installed, you can build the Ignite ODBC driver:
+NOTE: JDK is needed currently only for building, odbc driver binary doesn't depend on it.
 
-[source,shell]
+==== Building ODBC driver
+- Create build directory for cmake. We'll refer to this as `{CPP_BUILD_DIR}`

Review comment:
       I would update the steps this way if you don't mind:
   
   -  Create a build directory for CMake. We'll refer to it as to `{CPP_BUILD_DIR}`.
    - (Optional) Select the prefix of the installation directory which defaults to `/usr/local` if nothing is set. We'll refer to this directory as to `{CPP_INSTALL_DIR}`.
    - Build and install the driver by executing the following commands:

##########
File path: docs/_docs/quick-start/cpp.adoc
##########
@@ -51,30 +44,62 @@ For information about the {cpp} thin client, see link:thin-clients/cpp-thin-clie
 On unix systems, you can use the command line to build and run the examples included in the Ignite distribution.
 
 === Prerequisites
-The following packages should be installed:
-- C++ compiler
-- libssl
-- autotools
-- automake
-- libtool
+include::includes/cpp-linux-build-prerequisites.adoc[]
 
 === Building C++ Ignite
 
-. Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.
-. `cd {IGNITE_HOME}/platforms/cpp`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `make`
-
-=== Running the Thick Client Example
-
-. `cd {IGNITE_HOME}/platforms/cpp/examples`
-. `libtoolize && aclocal && autoheader && automake --add-missing && autoreconf`
-. `./configure`
-. `cd put-get-example`
-. `make`
-. `./ignite-put-get-example`
-
+- Download and unzip the Ignite binary release into a directory. We'll refer to this as `{IGNITE_HOME}`.

Review comment:
       You can remove the "a directory". See how these installation steps are described here: 
   https://ignite.apache.org/docs/2.9.0/installation/installing-using-zip#installing-using-zip-archive




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org