• Home
  • Raw
  • Download

Lines Matching +full:build +full:- +full:17

7 guidelines](https://github.com/abseil/abseil-cpp/blob/master/CONTRIBUTING.md#contribution-guideline…
15 ## How to I set the C++ dialect used to build Abseil?
19 project. If, for example, you want to set the C++ dialect to C++17, with
20 [Bazel](https://bazel/build/) as the build system and `gcc` or `clang` as the
22 * Pass `--cxxopt=-std=c++17` on the command line (for example, `bazel build
23 --cxxopt=-std=c++17 ...`)
25 `BAZEL_CXXOPTS=-std=c++17`)
26 * Add `build --cxxopt=-std=c++17` to your [`.bazelrc`
27 file](https://docs.bazel.build/versions/master/guide.html#bazelrc)
29 If you are using CMake as the build system, you'll need to add a line like
30 `set(CMAKE_CXX_STANDARD 17)` to your top level `CMakeLists.txt` file. See the
31 [CMake build
32 instructions](https://github.com/abseil/abseil-cpp/blob/master/CMake/README.md)
37 pre-compiled version of
38 Abseil?"](#what-is-abi-and-why-dont-you-recommend-using-a-pre-compiled-version-of-abseil)
40 ## What is ABI and why don't you recommend using a pre-compiled version of Abseil?
52 [Bazel](https://bazel.build/) `BUILD` file:
59 copts = ["-std=c++17"], # May create a mixed-mode compile!
64 Applying `-std=c++17` to an individual target in your `BUILD` file is going to
65 compile that specific target in C++17 mode, but it isn't going to ensure the
66 Abseil library is built in C++17 mode, since the Abseil library itself is a
67 different build target. If your code includes an Abseil header, then your
70 the ABI of a program need to be applied to the entire build on a global basis.
79 If you build the Abseil library and your code using different compile options
82 limited to) language dialect (e.g. `-std=`), optimization level (e.g. `-O2`),
83 code generation flags (e.g. `-fexceptions`), and preprocessor defines
84 (e.g. `-DNDEBUG`).
86 If you use a pre-compiled version of Abseil, (for example, from your Linux
91 you've used the exact same compile options as were used to build the
92 pre-compiled library. This does not mean that Abseil cannot work as part of a
95 reasons we warn against - though do not outright reject - using Abseil as a
96 pre-compiled library.
103 structure your build so that all libraries use the same version of Abseil.
109 For these reasons we recommend you avoid pre-compiled code and build the Abseil
114 From Abseil's point-of-view, "live at head" means that every Abseil source
122 Abseil](https://github.com/abseil/abseil-cpp/commits/master) as often as
129 If you are using the [Bazel](https://bazel.build/) build system and its
130 [external dependencies](https://docs.bazel.build/versions/master/external.html)
132 [`http_archive`](https://docs.bazel.build/versions/master/repo/http.html#http_archive)
134 [`WORKSPACE`](https://docs.bazel.build/versions/master/be/workspace.html) for
136 Abseil](https://github.com/abseil/abseil-cpp/commits/master) is all you need to
144 …rls = ["https://github.com/abseil/abseil-cpp/archive/98eb410c93ad059f9bba1bf43f5bb916fc92a5ea.zip"…
145 strip_prefix = "abseil-cpp-98eb410c93ad059f9bba1bf43f5bb916fc92a5ea",
150 To get the `sha256` of this URL, run `curl -sL --output -
151 https://github.com/abseil/abseil-cpp/archive/98eb410c93ad059f9bba1bf43f5bb916fc92a5ea.zip
152 | sha256sum -`.
159 [https://github.com/abseil/abseil-cpp/archive/master.zip](https://github.com/abseil/abseil-cpp/arch…
161 head. Since these `master.zip` URLs are not versioned, you will lose build
162 reproducibility. In addition, some build systems, including Bazel, will simply