Skip to content

DOCSP-50761 Add minimum compiler versions to build from source #140

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

jordan-smith721
Copy link
Collaborator

@jordan-smith721 jordan-smith721 commented Jul 10, 2025

Pull Request Info

PR Reviewing Guidelines

JIRA - https://jira.mongodb.org/browse/DOCSP-50761

Staging Links

  • compatibility
  • Self-Review Checklist

    • Is this free of any warnings or errors in the RST?
    • Did you run a spell-check?
    • Did you run a grammar-check?
    • Are all the links working?
    • Are the facets and meta keywords accurate?
    • Are the page titles greater than 20 characters long and SEO relevant?

    Copy link

    netlify bot commented Jul 10, 2025

    Deploy Preview for docs-cpp ready!

    Name Link
    🔨 Latest commit e2b1562
    🔍 Latest deploy log https://app.netlify.com/projects/docs-cpp/deploys/687119e45e9c7b00084ea703
    😎 Deploy Preview https://deploy-preview-140--docs-cpp.netlify.app
    📱 Preview on mobile
    Toggle QR Code...

    QR Code

    Use your smartphone camera to open QR code link.

    To edit notification comments on pull requests, go to your Netlify project configuration.

    @docs-builder-bot
    Copy link

    docs-builder-bot commented Jul 10, 2025

    🔄 Deploy Preview for docs-cpp processing

    Item Details
    🔨 Latest Commit fed712d64152c78c0f5204c8b2dcef3fdaa46a41
    😎 Deploy Preview https://deploy-preview-140--docs-cpp.netlify.app
    🔍 Build Logs View Logs

    Copy link
    Collaborator

    @norareidy norareidy left a comment

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    LGTM with a small suggestion!

    Comment on lines 54 to 57
    - `GCC <https://gcc.gnu.org/install/>`__ v8.1 or newer
    - `Clang <https://clang.llvm.org/>`__ v3.8 or newer
    - `Apple Clang <https://developer.apple.com/xcode/>`__ v13.1 or newer
    - `Visual Studio <https://visualstudio.microsoft.com/vs/features/cplusplus/>`__ 2015 Update 3 or newer
    Copy link
    Collaborator

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    S: I'd use "later" instead of "newer":

    Suggested change
    - `GCC <https://gcc.gnu.org/install/>`__ v8.1 or newer
    - `Clang <https://clang.llvm.org/>`__ v3.8 or newer
    - `Apple Clang <https://developer.apple.com/xcode/>`__ v13.1 or newer
    - `Visual Studio <https://visualstudio.microsoft.com/vs/features/cplusplus/>`__ 2015 Update 3 or newer
    - `GCC <https://gcc.gnu.org/install/>`__ v8.1 or later
    - `Clang <https://clang.llvm.org/>`__ v3.8 or later
    - `Apple Clang <https://developer.apple.com/xcode/>`__ v13.1 or later
    - `Visual Studio <https://visualstudio.microsoft.com/vs/features/cplusplus/>`__ 2015 Update 3 or later

    Comment on lines 52 to 58
    - Compiler that supports C++17, such as one of the following:

    - `GCC <https://gcc.gnu.org/install/>`__ v8.1 or later
    - `Clang <https://clang.llvm.org/>`__ v3.8 or later
    - `Apple Clang <https://developer.apple.com/xcode/>`__ v13.1 or later
    - `Visual Studio <https://visualstudio.microsoft.com/vs/features/cplusplus/>`__ 2015 Update 3 or later

    Copy link
    Collaborator

    @eramongodb eramongodb Jul 10, 2025

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    The current wording conflates the new minimum required compiler versions, which require support for C++11 and newer, with the C++17 requirement that is relevant only for this tutorial page (although it is still recommended over using C++11). Most of these compiler versions Clang 3.8 and VS 2015 do not support C++17.

    Suggest moving the list of "minimum required compiler versions" into a separate note into the "Compatibility" page and referencing that page within the existing "Pre-C++17 Configurations" note below.

    @eramongodb
    Copy link
    Collaborator

    eramongodb commented Jul 10, 2025

    Note: rather than the "Get Started" page, these minimum required compiler versions should probably be listed on the "Compatibility" page under a "Compilers" section in a manner similar to what is already done for the C Driver, although I'd prefer the description be "The currently supported list of compilers are: ..." rather than "The following compilers are continually tested with ...: ...".

    @jordan-smith721
    Copy link
    Collaborator Author

    Appreciate the suggestion @eramongodb! I moved this into the compatibility page instead and modified the intro wording a bit

    Copy link
    Collaborator

    @eramongodb eramongodb left a comment

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    A few more suggestions; otherwise, LGTM.

    * - Compiler
    - Version

    * - `GCC <https://gcc.gnu.org/install/>`__
    Copy link
    Collaborator

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    Suggested change
    * - `GCC <https://gcc.gnu.org/install/>`__
    * - `GCC <https://gcc.gnu.org/>`__

    Main page rather than install page.

    * - `Clang <https://clang.llvm.org/>`__
    - v3.8 or later

    * - `Apple Clang <https://developer.apple.com/xcode/>`__
    Copy link
    Collaborator

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    Suggested change
    * - `Apple Clang <https://developer.apple.com/xcode/>`__
    * - `Xcode 13.4 <https://developer.apple.com/xcode/cpp/>`__

    Given Xcode (IDE) provides Apple Clang (compiler) similar to how Visual Studio (IDE) provides MSVC (compiler), recommend better consistency between both by opting for the name and version of the IDE rather than the compiler.


    The preceding compiler versions are the minimum versions required to
    build the {+driver-short+} from source. These are not requirements
    needed for prebuilt headers and libraries.
    Copy link
    Collaborator

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    Suggested change
    needed for prebuilt headers and libraries.
    to use prebuilt headers and libraries.

    Wording tweak.

    @jordan-smith721 jordan-smith721 merged commit 7ed65c8 into mongodb:master Jul 11, 2025
    6 checks passed
    @jordan-smith721 jordan-smith721 deleted the DOCSP-50761-min-compiler-version branch July 11, 2025 14:12
    jordan-smith721 added a commit that referenced this pull request Jul 11, 2025
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    None yet
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    4 participants