diff options
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/BuildInstructionsLinux.md | 30 | ||||
-rw-r--r-- | cpp/BuildInstructionsMacOS.md | 34 | ||||
-rw-r--r-- | cpp/BuildInstructionsWindows.md | 42 |
3 files changed, 58 insertions, 48 deletions
diff --git a/cpp/BuildInstructionsLinux.md b/cpp/BuildInstructionsLinux.md index f18a0da7d2f..5859871bae5 100644 --- a/cpp/BuildInstructionsLinux.md +++ b/cpp/BuildInstructionsLinux.md @@ -67,22 +67,23 @@ These packages are provided with the system and can be installed with: sudo apt-get install pkg-config libdbus-1-dev libbluetooth-dev ``` -> *We have experienced problems with BlueZ versions up to and including 5.39, -as well as 5.44 and 5.45. At this time we recommend using the daemon (`bluetoothd`) +> *We have experienced problems with BlueZ versions up to and including 5.39, as +well as 5.44 and 5.45. At this time we recommend using the daemon (`bluetoothd`) from BlueZ 5.43.* ## Building Ice -Review the top-level [config/Make.rules](../config/Make.rules) in your build tree and -update the configuration if needed. The comments in the file provide more information. +Review the top-level [config/Make.rules](../config/Make.rules) in your build +tree and update the configuration if needed. The comments in the file provide +more information. In a command window, change to the `cpp` subdirectory: ``` cd cpp ``` -Run `make` to build the Ice C++ libraries, services and test suite. Set `V=1` to get -a more detailed build output. You can build only the libraries and services with the -`srcs` target, or only the tests with the `tests` target. For example: +Run `make` to build the Ice C++ libraries, services and test suite. Set `V=1` to +get a more detailed build output. You can build only the libraries and services +with the `srcs` target, or only the tests with the `tests` target. For example: ``` make V=1 -j8 srcs ``` @@ -117,7 +118,8 @@ To build the C++11 mapping, use build configurations that are prefixed with Simply run `make install`. This will install Ice in the directory specified by the `<prefix>` variable in `../config/Make.rules`. -After installation, make sure that the `<prefix>/bin` directory is in your `PATH`. +After installation, make sure that the `<prefix>/bin` directory is in your +`PATH`. If you choose to not embed a `runpath` into executables at build time (see your build settings in `../config/Make.rules`) or did not create a symbolic link from @@ -129,13 +131,13 @@ On an x86_64 system: <prefix>/lib64 (RHEL, SLES, Amazon) <prefix>/lib/x86_64-linux-gnu (Ubuntu) -When compiling Ice programs, you must pass the location of the `<prefix>/include` -directory to the compiler with the `-I` option, and the location of the library -directory with the `-L` option. +When compiling Ice programs, you must pass the location of the +`<prefix>/include` directory to the compiler with the `-I` option, and the +location of the library directory with the `-L` option. -If building a C++11 program, you must define the `ICE_CPP11_MAPPING` macro during -compilation with the `-D` option (`g++ -DICE_CPP11_MAPPING`) and add -the `++11` suffix to the library name when linking (such as `-lIce++11`). +If building a C++11 program, you must define the `ICE_CPP11_MAPPING` macro +during compilation with the `-D` option (`g++ -DICE_CPP11_MAPPING`) and add the +`++11` suffix to the library name when linking (such as `-lIce++11`). ## Running the Test Suite diff --git a/cpp/BuildInstructionsMacOS.md b/cpp/BuildInstructionsMacOS.md index 3a39efa02b2..e5089466ab8 100644 --- a/cpp/BuildInstructionsMacOS.md +++ b/cpp/BuildInstructionsMacOS.md @@ -29,16 +29,17 @@ You can install LMDB and mcpp using [Homebrew][7]: ``` ## Building Ice -Review the top-level [config/Make.rules](../config/Make.rules) in your build tree and -update the configuration if needed. The comments in the file provide more information. +Review the top-level [config/Make.rules](../config/Make.rules) in your build +tree and update the configuration if needed. The comments in the file provide +more information. In a command window, change to the `cpp` subdirectory: ``` cd cpp ``` -Run `make` to build the Ice C++ libraries, services and test suite. Set `V=1` to get -a more detailed build output. You can build only the libraries and services with the -`srcs` target, or only the tests with the `tests` target. For example: +Run `make` to build the Ice C++ libraries, services and test suite. Set `V=1` to +get a more detailed build output. You can build only the libraries and services +with the `srcs` target, or only the tests with the `tests` target. For example: ``` make V=1 -j8 srcs ``` @@ -109,12 +110,12 @@ configuration(s) you selected. However, in order to run the test suite on `iphoneos`, you need to build the C++98 Test Controller app or C++11 Test Controller app from Xcode: - - Build the test suite with `make` for the `xcodedsk` or `cpp11-xcodesdk` configuration, - and the `iphoneos` platform. + - Build the test suite with `make` for the `xcodedsk` or `cpp11-xcodesdk` + configuration, and the `iphoneos` platform. - Open the C++ Test Controller project located in the - `cpp\test\ios\controller` directory. - - Build the `C++98 Test Controller` or the `C++11 Test Controller` app (it must match - the configuration(s) selected when building the test suite). + `cpp/test/ios/controller` directory. + - Build the `C++98 Test Controller` or the `C++11 Test Controller` app (it must + match the configuration(s) selected when building the test suite). ## Running the Test Suite @@ -123,9 +124,9 @@ require the Python module `passlib`, which you can install with the command: ``` pip install passlib ``` -After a successful source build, you can run the tests as shown below. If everything -worked out, you should see lots of `ok` messages. In case of a failure, the tests abort -with `failed`. +After a successful source build, you can run the tests as shown below. If +everything worked out, you should see lots of `ok` messages. In case of a +failure, the tests abort with `failed`. ### macOS ``` @@ -138,14 +139,15 @@ with `failed`. python allTests.py --config=cpp11-xcodesdk --platform=iphonesimulator --controller-app ``` ### iOS - - Start the `C++98 Test Controller` or the `C++11 Test Controller` app on your iOS - device, from Xcode. + - Start the `C++98 Test Controller` or the `C++11 Test Controller` app on your + iOS device, from Xcode. - On your Mac: ``` python allTests.py --config=xcodesdk --platform=iphoneos # C++98 controller python allTests.py --confg=cpp11-xcodesdk --platform=iphoneos # C++11 controller ``` - All the test clients and servers run on the iOS device, not on your Mac computer. + All the test clients and servers run on the iOS device, not on your Mac + computer. [1]: https://doc.zeroc.com/display/Rel/Using+the+macOS+Binary+Distribution+for+Ice+3.7.0 [2]: https://doc.zeroc.com/display/Rel/Supported+Platforms+for+Ice+3.7.0 diff --git a/cpp/BuildInstructionsWindows.md b/cpp/BuildInstructionsWindows.md index ec0cf9e9a2d..fe4a2dc3c1a 100644 --- a/cpp/BuildInstructionsWindows.md +++ b/cpp/BuildInstructionsWindows.md @@ -3,9 +3,9 @@ This file describes how to build Ice for C++ from sources on Windows and how to test the resulting build. -ZeroC provides [Ice binary distributions][1] for various platforms and compilers, -including Windows and Visual Studio, so building Ice from sources is usually -unnecessary. +ZeroC provides [Ice binary distributions][1] for various platforms and +compilers, including Windows and Visual Studio, so building Ice from sources is +usually unnecessary. ## Build Requirements @@ -84,17 +84,18 @@ environment variables: - SIGN_CERTIFICATE to your Authenticode certificate - SIGN_PASSWORD to the certificate password -If you want to run the test suite without building the entire source base, use this -command: +If you want to run the test suite without building the entire source base, use +this command: msbuild msbuild\ice.proj /p:ICE_BIN_DIST=all -The build will automatically install ZeroC's official Ice binary NuGet packages if necessary. +The build will automatically install ZeroC's official Ice binary NuGet packages +if necessary. ## Building Ice for UWP -The steps are the same as for Building Ice for C++ above, except you must also use a -`UWP` target. +The steps are the same as for Building Ice for C++ above, except you must also +use a `UWP` target. To build Ice for UWP: @@ -118,17 +119,21 @@ You can create a NuGet package with the following command: msbuild msbuild\ice.proj /t:NuGetPack /p:BuildAllConfigurations=yes -This creates zeroc.ice.v120\zeroc.ice.v120.nupkg`, `zeroc.ice.v140\zeroc.ice.v140.nupkg` or -`zeroc.ice.v141\zeroc.ice.v141.nupkg` depending on the compiler you are using. +This creates `zeroc.ice.v120\zeroc.ice.v120.nupkg`, +`zeroc.ice.v140\zeroc.ice.v140.nupkg` or `zeroc.ice.v141\zeroc.ice.v141.nupkg` +depending on the compiler you are using. To create UWP NuGet packages, use the `UWPNuGetPack` target instead: msbuild msbuild\ice.proj /t:UWPNuGetPack /p:BuildAllConfigurations=yes -This creates `zeroc.ice.uwp.v140\zeroc.ice.uwp.v140.nupkg`, `zeroc.ice.uwp.v140.x64\zeroc.ice.uwp.v140.x64.nupkg` -and `zeroc.ice.uwp.v140.x86\zeroc.ice.uwp.v140.x86.nupkg` for Visual Studio 2015 builds or -`zeroc.ice.uwp.v140\zeroc.ice.uwp.v140.nupkg`, `zeroc.ice.uwp.v140.x64\zeroc.ice.uwp.v140.x64.nupkg` and -`zeroc.ice.uwp.v140.x86\zeroc.ice.uwp.v140.x86.nupkg` for Visual Studio 2017 builds. +This creates: `zeroc.ice.uwp.v140\zeroc.ice.uwp.v140.nupkg`, +`zeroc.ice.uwp.v140.x64\zeroc.ice.uwp.v140.x64.nupkg` and +`zeroc.ice.uwp.v140.x86\zeroc.ice.uwp.v140.x86.nupkg` for Visual Studio 2015 +builds or `zeroc.ice.uwp.v140\zeroc.ice.uwp.v140.nupkg`, +`zeroc.ice.uwp.v140.x64\zeroc.ice.uwp.v140.x64.nupkg` and +`zeroc.ice.uwp.v140.x86\zeroc.ice.uwp.v140.x86.nupkg` for Visual Studio 2017 +builds. ## Running the Test Suite @@ -141,7 +146,8 @@ After a successful source build, you can run the tests as follows: python allTests.py -For the C++11 mapping you need to use the `Cpp11-Debug` or `Cpp11-Release` configuration: +For the C++11 mapping you need to use the `Cpp11-Debug` or `Cpp11-Release` +configuration: python allTests.py --config Cpp11-Debug @@ -155,9 +161,9 @@ require the Python module `passlib`, which you can install with the command: pip install passlib -The scripts also require Ice for Python, you can build Ice for Python from [python](../python) -folder of this source distribution or install the Python module `zeroc-ice`, using the -following command: +The scripts also require Ice for Python, you can build Ice for Python from +[python](../python) folder of this source distribution or install the Python +module `zeroc-ice`, using the following command: pip install zeroc-ice |