momo-jun commented on code in PR #18188:
URL: https://github.com/apache/pulsar/pull/18188#discussion_r1006318037


##########
site2/website/versioned_docs/version-2.9.x/client-libraries-cpp.md:
##########
@@ -5,318 +5,111 @@ sidebar_label: "C++"
 original_id: client-libraries-cpp
 ---
 
-You can use Pulsar C++ client to create Pulsar producers and consumers in C++.
+````mdx-code-block
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+````
 
-All the methods in producer, consumer, and reader of a C++ client are 
thread-safe.
+You can use a Pulsar C++ client to create producers, consumers, and readers.
 
-## Supported platforms
+All the methods in producer, consumer, and reader of a C++ client are 
thread-safe. You can read the [API docs](/api/cpp) for the C++ client.
 
-Pulsar C++ client is supported on **Linux** ,**macOS** and **Windows** 
platforms.
+## Installation
 
-[Doxygen](http://www.doxygen.nl/)-generated API docs for the C++ client are 
available [here](/api/cpp).
+Use one of the following methods to install a Pulsar C++ client.
 
-## System requirements
+### Brew
 
-You need to install the following components before using the C++ client:
-
-* [CMake](https://cmake.org/)
-* [Boost](http://www.boost.org/)
-* [Protocol Buffers](https://developers.google.com/protocol-buffers/) >= 3
-* [libcurl](https://curl.se/libcurl/)
-* [Google Test](https://github.com/google/googletest)
-
-## Linux
-
-### Compilation 
-
-1. Clone the Pulsar repository.
-
-```shell
-
-$ git clone https://github.com/apache/pulsar
+Use [Homebrew](http://brew.sh/) to install the latest tagged version with the 
library and headers:
 
+```bash
+brew install libpulsar
 ```
 
-2. Install all necessary dependencies.
+### Deb
 
-```shell
+1. Download any one of the Deb packages:
 
-$ apt-get install cmake libssl-dev libcurl4-openssl-dev liblog4cxx-dev \
-  libprotobuf-dev protobuf-compiler libboost-all-dev google-mock libgtest-dev 
libjsoncpp-dev
+<Tabs>
+<TabItem value="client">
 
+```bash
+wget @pulsar:deb:client@
 ```
 
-3. Compile and install [Google Test](https://github.com/google/googletest).
-
-```shell
-
-# libgtest-dev version is 1.18.0 or above
-$ cd /usr/src/googletest
-$ sudo cmake .
-$ sudo make
-$ sudo cp ./googlemock/libgmock.a ./googlemock/gtest/libgtest.a /usr/lib/
-
-# less than 1.18.0
-$ cd /usr/src/gtest
-$ sudo cmake .
-$ sudo make
-$ sudo cp libgtest.a /usr/lib
+This package contains shared libraries `libpulsar.so` and `libpulsarnossl.so`.
 
-$ cd /usr/src/gmock
-$ sudo cmake .
-$ sudo make
-$ sudo cp libgmock.a /usr/lib
+</TabItem>
+<TabItem value="client-devel">
 
+```bash
+wget @pulsar:deb:client-devel@
 ```
 
-4. Compile the Pulsar client library for C++ inside the Pulsar repository.
+This package contains static libraries: `libpulsar.a`, `libpulsarwithdeps.a` 
and C/C++ headers.
 
-```shell
+</TabItem>
+</Tabs>
 
-$ cd pulsar-client-cpp
-$ cmake .
-$ make
+2. Install the package using the following command:
 
+```bash
+apt install ./apache-pulsar-client*.deb
 ```
 
-After you install the components successfully, the files `libpulsar.so` and 
`libpulsar.a` are in the `lib` folder of the repository. The tools 
`perfProducer` and `perfConsumer` are in the `perf` directory.
-
-### Install Dependencies
-
-> Since 2.1.0 release, Pulsar ships pre-built RPM and Debian packages. You can 
download and install those packages directly.
+Now, you can see Pulsar C++ client libraries installed under the `/usr/lib` 
directory.
 
-After you download and install RPM or DEB, the `libpulsar.so`, 
`libpulsarnossl.so`, `libpulsar.a`, and `libpulsarwithdeps.a` libraries are in 
your `/usr/lib` directory.
+### RPM
 
-By default, they are built in code path `${PULSAR_HOME}/pulsar-client-cpp`. 
You can build with the command below.
+1. Download any one of the RPM packages:
 
- `cmake . -DBUILD_TESTS=OFF -DLINK_STATIC=ON && make pulsarShared 
pulsarSharedNossl pulsarStatic pulsarStaticWithDeps -j 3`.
-
-These libraries rely on some other libraries. If you want to get detailed 
version of dependencies, see 
[RPM](https://github.com/apache/pulsar/blob/master/pulsar-client-cpp/pkg/rpm/Dockerfile)
 or 
[DEB](https://github.com/apache/pulsar/blob/master/pulsar-client-cpp/pkg/deb/Dockerfile)
 files.
-
-1. `libpulsar.so` is a shared library, containing statically linked `boost` 
and `openssl`. It also dynamically links all other necessary libraries. You can 
use this Pulsar library with the command below.
+<Tabs>
+<TabItem value="client">
 
 ```bash
-
- g++ --std=c++11  PulsarTest.cpp -o test /usr/lib/libpulsar.so 
-I/usr/local/ssl/include
-
+wget @pulsar:dist_rpm:client@
 ```
 
-2. `libpulsarnossl.so` is a shared library, similar to `libpulsar.so` except 
that the libraries `openssl` and `crypto` are dynamically linked. You can use 
this Pulsar library with the command below.
-
-```bash
-
- g++ --std=c++11  PulsarTest.cpp -o test /usr/lib/libpulsarnossl.so -lssl 
-lcrypto -I/usr/local/ssl/include -L/usr/local/ssl/lib
-
-```
+This package contains shared libraries: `libpulsar.so` and `libpulsarnossl.so`.
 
-3. `libpulsar.a` is a static library. You need to load dependencies before 
using this library. You can use this Pulsar library with the command below.
+</TabItem>
+<TabItem value="client-debuginfo">
 
 ```bash
-
- g++ --std=c++11  PulsarTest.cpp -o test /usr/lib/libpulsar.a -lssl -lcrypto 
-ldl -lpthread  -I/usr/local/ssl/include -L/usr/local/ssl/lib -lboost_system 
-lboost_regex -lcurl -lprotobuf -lzstd -lz
-
+wget @pulsar:dist_rpm:client-debuginfo@
 ```
 
-4. `libpulsarwithdeps.a` is a static library, based on `libpulsar.a`. It is 
archived in the dependencies of `libboost_regex`, `libboost_system`, `libcurl`, 
`libprotobuf`, `libzstd` and `libz`. You can use this Pulsar library with the 
command below.
-
-```bash
+This package contains debug symbols for `libpulsar.so`

Review Comment:
   ```suggestion
   This package contains debug symbols for `libpulsar.so`.
   ```



##########
site2/website/versioned_docs/version-2.8.x/client-libraries-cpp.md:
##########
@@ -5,267 +5,111 @@ sidebar_label: "C++"
 original_id: client-libraries-cpp
 ---
 
-You can use Pulsar C++ client to create Pulsar producers and consumers in C++.
+````mdx-code-block
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+````
 
-All the methods in producer, consumer, and reader of a C++ client are 
thread-safe.
+You can use a Pulsar C++ client to create producers, consumers, and readers.
 
-## Supported platforms
+All the methods in producer, consumer, and reader of a C++ client are 
thread-safe. You can read the [API docs](/api/cpp) for the C++ client.
 
-Pulsar C++ client is supported on **Linux** and **macOS** platforms.
+## Installation
 
-[Doxygen](http://www.doxygen.nl/)-generated API docs for the C++ client are 
available [here](/api/cpp).
+Use one of the following methods to install a Pulsar C++ client.
 
-## System requirements
+### Brew
 
-You need to install the following components before using the C++ client:
-
-* [CMake](https://cmake.org/)
-* [Boost](http://www.boost.org/)
-* [Protocol Buffers](https://developers.google.com/protocol-buffers/) 2.6
-* [libcurl](https://curl.haxx.se/libcurl/)
-* [Google Test](https://github.com/google/googletest)
-
-## Linux
-
-### Compilation 
-
-1. Clone the Pulsar repository.
-
-```shell
-
-$ git clone https://github.com/apache/pulsar
-
-```
-
-2. Install all necessary dependencies.
-
-```shell
-
-$ apt-get install cmake libssl-dev libcurl4-openssl-dev liblog4cxx-dev \
-  libprotobuf-dev protobuf-compiler libboost-all-dev google-mock libgtest-dev 
libjsoncpp-dev
-
-```
-
-3. Compile and install [Google Test](https://github.com/google/googletest).
-
-```shell
-
-# libgtest-dev version is 1.18.0 or above
-$ cd /usr/src/googletest
-$ sudo cmake .
-$ sudo make
-$ sudo cp ./googlemock/libgmock.a ./googlemock/gtest/libgtest.a /usr/lib/
-
-# less than 1.18.0
-$ cd /usr/src/gtest
-$ sudo cmake .
-$ sudo make
-$ sudo cp libgtest.a /usr/lib
-
-$ cd /usr/src/gmock
-$ sudo cmake .
-$ sudo make
-$ sudo cp libgmock.a /usr/lib
-
-```
-
-4. Compile the Pulsar client library for C++ inside the Pulsar repository.
-
-```shell
-
-$ cd pulsar-client-cpp
-$ cmake .
-$ make
-
-```
-
-After you install the components successfully, the files `libpulsar.so` and 
`libpulsar.a` are in the `lib` folder of the repository. The tools 
`perfProducer` and `perfConsumer` are in the `perf` directory.
-
-### Install Dependencies
-
-> Since 2.1.0 release, Pulsar ships pre-built RPM and Debian packages. You can 
download and install those packages directly.
-
-After you download and install RPM or DEB, the `libpulsar.so`, 
`libpulsarnossl.so`, `libpulsar.a`, and `libpulsarwithdeps.a` libraries are in 
your `/usr/lib` directory.
-
-By default, they are built in code path `${PULSAR_HOME}/pulsar-client-cpp`. 
You can build with the command below.
-
- `cmake . -DBUILD_TESTS=OFF -DLINK_STATIC=ON && make pulsarShared 
pulsarSharedNossl pulsarStatic pulsarStaticWithDeps -j 3`.
-
-These libraries rely on some other libraries. If you want to get detailed 
version of dependencies, see 
[RPM](https://github.com/apache/pulsar/blob/master/pulsar-client-cpp/pkg/rpm/Dockerfile)
 or 
[DEB](https://github.com/apache/pulsar/blob/master/pulsar-client-cpp/pkg/deb/Dockerfile)
 files.
-
-1. `libpulsar.so` is a shared library, containing statically linked `boost` 
and `openssl`. It also dynamically links all other necessary libraries. You can 
use this Pulsar library with the command below.
+Use [Homebrew](http://brew.sh/) to install the latest tagged version with the 
library and headers:
 
 ```bash
-
- g++ --std=c++11  PulsarTest.cpp -o test /usr/lib/libpulsar.so 
-I/usr/local/ssl/include
-
-```
-
-2. `libpulsarnossl.so` is a shared library, similar to `libpulsar.so` except 
that the libraries `openssl` and `crypto` are dynamically linked. You can use 
this Pulsar library with the command below.
-
-```bash
-
- g++ --std=c++11  PulsarTest.cpp -o test /usr/lib/libpulsarnossl.so -lssl 
-lcrypto -I/usr/local/ssl/include -L/usr/local/ssl/lib
-
+brew install libpulsar
 ```
 
-3. `libpulsar.a` is a static library. You need to load dependencies before 
using this library. You can use this Pulsar library with the command below.
-
-```bash
-
- g++ --std=c++11  PulsarTest.cpp -o test /usr/lib/libpulsar.a -lssl -lcrypto 
-ldl -lpthread  -I/usr/local/ssl/include -L/usr/local/ssl/lib -lboost_system 
-lboost_regex -lcurl -lprotobuf -lzstd -lz
+### Deb
 
-```
+1. Download any one of the Deb packages:
 
-4. `libpulsarwithdeps.a` is a static library, based on `libpulsar.a`. It is 
archived in the dependencies of `libboost_regex`, `libboost_system`, `libcurl`, 
`libprotobuf`, `libzstd` and `libz`. You can use this Pulsar library with the 
command below.
+<Tabs>
+<TabItem value="client">
 
 ```bash
-
- g++ --std=c++11  PulsarTest.cpp -o test /usr/lib/libpulsarwithdeps.a -lssl 
-lcrypto -ldl -lpthread  -I/usr/local/ssl/include -L/usr/local/ssl/lib
-
+wget @pulsar:deb:client@
 ```
 
-The `libpulsarwithdeps.a` does not include library openssl related libraries 
`libssl` and `libcrypto`, because these two libraries are related to security. 
It is more reasonable and easier to use the versions provided by the local 
system to handle security issues and upgrade libraries.
-
-### Install RPM
+This package contains shared libraries `libpulsar.so` and `libpulsarnossl.so`.
 
-1. Download an RPM package from the links in the table. 
-
-| Link | Crypto files |
-|------|--------------|
-| [client](@pulsar:dist_rpm:client@) | [asc](@pulsar:dist_rpm:[email protected]), 
[sha512](@pulsar:dist_rpm:[email protected]) |
-| [client-debuginfo](@pulsar:dist_rpm:client-debuginfo@) | 
[asc](@pulsar:dist_rpm:[email protected]),  
[sha512](@pulsar:dist_rpm:[email protected]) |
-| [client-devel](@pulsar:dist_rpm:client-devel@) | 
[asc](@pulsar:dist_rpm:[email protected]),  
[sha512](@pulsar:dist_rpm:[email protected]) |
-
-2. Install the package using the following command.
+</TabItem>
+<TabItem value="client-devel">
 
 ```bash
-
-$ rpm -ivh apache-pulsar-client*.rpm
-
+wget @pulsar:deb:client-devel@
 ```
 
-After you install RPM successfully, Pulsar libraries are in the `/usr/lib` 
directory.
-
-### Install Debian
+This package contains static libraries: `libpulsar.a`, `libpulsarwithdeps.a` 
and C/C++ headers.
 
-1. Download a Debian package from the links in the table. 
+</TabItem>
+</Tabs>
 
-| Link | Crypto files |
-|------|--------------|
-| [client](@pulsar:deb:client@) | [asc](@pulsar:dist_deb:[email protected]), 
[sha512](@pulsar:dist_deb:[email protected]) |
-| [client-devel](@pulsar:deb:client-devel@) | 
[asc](@pulsar:dist_deb:[email protected]),  
[sha512](@pulsar:dist_deb:[email protected]) |
-
-2. Install the package using the following command.
+2. Install the package using the following command:
 
 ```bash
-
-$ apt install ./apache-pulsar-client*.deb
-
+apt install ./apache-pulsar-client*.deb
 ```
 
-After you install DEB successfully, Pulsar libraries are in the `/usr/lib` 
directory.
-
-### Build
-
-> If you want to build RPM and Debian packages from the latest master, follow 
the instructions below. You should run all the instructions at the root 
directory of your cloned Pulsar repository.
-
-There are recipes that build RPM and Debian packages containing a
-statically linked `libpulsar.so` / `libpulsarnossl.so` / `libpulsar.a` / 
`libpulsarwithdeps.a` with all required dependencies.
-
-To build the C++ library packages, you need to build the Java packages first.
-
-```shell
-
-mvn install -DskipTests
-
-```
+Now, you can see Pulsar C++ client libraries installed under the `/usr/lib` 
directory.
 
-#### RPM
+### RPM
 
-To build the RPM inside a Docker container, use the command below. The RPMs 
are in the `pulsar-client-cpp/pkg/rpm/RPMS/x86_64/` path.
+1. Download any one of the RPM packages:
 
-```shell
-
-pulsar-client-cpp/pkg/rpm/docker-build-rpm.sh
+<Tabs>
+<TabItem value="client">
 
+```bash
+wget @pulsar:dist_rpm:client@
 ```
 
-| Package name | Content |
-|-----|-----|
-| pulsar-client | Shared library `libpulsar.so` and `libpulsarnossl.so` |
-| pulsar-client-devel | Static library `libpulsar.a`, `libpulsarwithdeps.a`and 
C++ and C headers |
-| pulsar-client-debuginfo | Debug symbols for `libpulsar.so` |
-
-#### Debian
+This package contains shared libraries: `libpulsar.so` and `libpulsarnossl.so`.
 
-To build Debian packages, enter the following command.
-
-```shell
-
-pulsar-client-cpp/pkg/deb/docker-build-deb.sh
+</TabItem>
+<TabItem value="client-debuginfo">
 
+```bash
+wget @pulsar:dist_rpm:client-debuginfo@
 ```
 
-Debian packages are created in the `pulsar-client-cpp/pkg/deb/BUILD/DEB/` path.
-
-| Package name | Content |
-|-----|-----|
-| pulsar-client | Shared library `libpulsar.so` and `libpulsarnossl.so` |
-| pulsar-client-dev | Static library `libpulsar.a`, `libpulsarwithdeps.a` and 
C++ and C headers |
-
-## MacOS
-
-### Compilation
-
-1. Clone the Pulsar repository.
-
-```shell
+This package contains debug symbols for `libpulsar.so`

Review Comment:
   ```suggestion
   This package contains debug symbols for `libpulsar.so`.
   ```



-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to