Remote Execution Caching Compiler (RECC)Caching Compiler (RECC) CppCon 2024 September 19, 2024 Shivam Bairoliya Software Engineer© 2024 Bloomberg Finance L.P. All rights reserved. What is RECC? ● Remote Execution Caching Compiler (RECC) ○ Open source build tool that wraps compiler commands and optionally forwards them to a remote build execution service ○ Encompasses the capabilities of both ccache and distcc ○ Supports remote linking linking and caching ● Designed to share caches across diverse toolchains ○ Works with many compiler toolchains (GCC, Clang, Solaris CC) ○ Supports multiple operating systems (Linux, macOS, Solaris)0 码力 | 6 页 | 2.03 MB | 6 月前3
Conan 2.10 Documentationcreate and reuse any number of different binaries (for different config- urations like architectures, compiler versions, etc.) for any number of different versions of a package, using exactly the same process of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same commands to integrate with any build system, including proprietary ones. Likewise, Conan can manage any compiler and any version. There are default definitions for the most popular ones: gcc, cl.exe, clang, apple-clang0 码力 | 803 页 | 5.02 MB | 10 月前3
Conan 2.9 Documentationcreate and reuse any number of different binaries (for different config- urations like architectures, compiler versions, etc.) for any number of different versions of a package, using exactly the same process of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same commands to integrate with any build system, including proprietary ones. Likewise, Conan can manage any compiler and any version. There are default definitions for the most popular ones: gcc, cl.exe, clang, apple-clang0 码力 | 795 页 | 4.99 MB | 10 月前3
Conan 2.7 Documentationcreate and reuse any number of different binaries (for different config- urations like architectures, compiler versions, etc.) for any number of different versions of a package, using exactly the same process of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same commands to integrate with any build system, including proprietary ones. Likewise, Conan can manage any compiler and any version. There are default definitions for the most popular ones: gcc, cl.exe, clang, apple-clang0 码力 | 779 页 | 4.93 MB | 10 月前3
Conan 2.8 Documentationcreate and reuse any number of different binaries (for different config- urations like architectures, compiler versions, etc.) for any number of different versions of a package, using exactly the same process of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same commands to integrate with any build system, including proprietary ones. Likewise, Conan can manage any compiler and any version. There are default definitions for the most popular ones: gcc, cl.exe, clang, apple-clang0 码力 | 785 页 | 4.95 MB | 10 月前3
Conan 2.6 Documentationcreate and reuse any number of different binaries (for different config- urations like architectures, compiler versions, etc.) for any number of different versions of a package, using exactly the same process of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same commands to integrate with any build system, including proprietary ones. Likewise, Conan can manage any compiler and any version. There are default definitions for the most popular ones: gcc, cl.exe, clang, apple-clang0 码力 | 777 页 | 4.91 MB | 10 月前3
C++20 Modules: The Packaging and Binary Redistribution StoryWhen invoking the compiler, it needs to be able to resolve the location of #included files Typically: ● Some default locations: ○ Relative to the .cpp file (for “”) ○ System or compiler installation locations fmt::print("Hello!\n"); } clang++ -std=c++20 -o hello_world.cpp.o -c hello_world.cpp -I/path/to/fmt/include compiler CLI msvc /reference fmt=/path/to/fmt.ifc clang -fprebuilt-module-path=/path/to/folder -fmod -fmodule-file=fmt=/path/to/fmt.pcm gcc -fmodule-mapper= (server or file with module name <> file mappings) The compiler needs to locate and load the binary module interface (BMI) 👇:Binary module interfaces export0 码力 | 76 页 | 2.09 MB | 6 月前3
Just-in-Time Compilation - J F Bastien - CppCon 2020this talk I'll tell you about C++ AoT compiler, JiTs for dynamic language, JiTs for binary translation, and dive back 20, 30, 40, 50, 60 years, way back into compiler history and read wonderful academic for machine code. A compiler can perform partial evaluation of a program, thereby interpreting it… The compiler itself can be compiled. The compiler compiler is then a compiler interpreter… but I’m getting community have the following perspective: > I understand C++, and I kinda get assembly because of compiler explorer. Our typical model of AoT is “what C and C++ do”, and I want to expand the understanding0 码力 | 111 页 | 3.98 MB | 6 月前3
Cetting Started with C++platform Build & project systems Editors & IDEs Compiler toolchainsTools for your platform Build & project systems Editors & IDEs Compiler toolchainsEditor or Integrated Developer Environment Focused on text editing Syntax highlighting Bundled experience Usually tightly integrated with compiler toolchain and other build environment tools Sometimes focused on specific target environments Usually extensible, but often not needed Often extensible… Build system knowledge Invoking compiler tools Debugger capabilitiesEditor IDE Editors & IDEs Emacs Neovim Visual Studio Code Qt Creator0 码力 | 95 页 | 4.71 MB | 6 月前3
Just-In-Time Compilation: The Next Big ThingAHEAD-OF-TIME (AOT), AKA "THE NORM": IT'S LIKE THE APPLICATION (/LIBRARY) IS THE COMPILER... (/LIBRARY) IS THE COMPILER... 3 . 2WHAT IS JITTING? WHAT IS JITTING? INSTEAD OF AHEAD-OF-TIME (AOT), AKA "THE AHEAD-OF-TIME (AOT), AKA "THE NORM": IT'S LIKE THE APPLICATION (/LIBRARY) IS THE COMPILER... (/LIBRARY) IS THE COMPILER... JUST-IN-TIME (JIT) IS COMPILATION AT THE POINT OF NEED JUST-IN-TIME (JIT) IS AHEAD-OF-TIME (AOT), AKA "THE NORM": IT'S LIKE THE APPLICATION (/LIBRARY) IS THE COMPILER... (/LIBRARY) IS THE COMPILER... JUST-IN-TIME (JIT) IS COMPILATION AT THE POINT OF NEED JUST-IN-TIME (JIT) IS0 码力 | 222 页 | 5.45 MB | 6 月前3
共 258 条
- 1
- 2
- 3
- 4
- 5
- 6
- 26













