{"id":16736101,"url":"https://github.com/dyu/cpp-build-example","last_synced_at":"2025-03-15T21:12:06.832Z","repository":{"id":68373537,"uuid":"82695766","full_name":"dyu/cpp-build-example","owner":"dyu","description":null,"archived":false,"fork":false,"pushed_at":"2017-02-25T08:38:40.000Z","size":33,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-22T10:13:43.552Z","etag":null,"topics":["bfg9000","buck","cmake","conan","cpp","meson","ninja"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dyu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-02-21T15:29:59.000Z","updated_at":"2023-09-08T17:21:16.000Z","dependencies_parsed_at":"2023-05-06T08:15:15.309Z","dependency_job_id":null,"html_url":"https://github.com/dyu/cpp-build-example","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyu%2Fcpp-build-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyu%2Fcpp-build-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyu%2Fcpp-build-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dyu%2Fcpp-build-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dyu","download_url":"https://codeload.github.com/dyu/cpp-build-example/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243790999,"owners_count":20348385,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bfg9000","buck","cmake","conan","cpp","meson","ninja"],"created_at":"2024-10-13T00:08:19.591Z","updated_at":"2025-03-15T21:12:06.804Z","avatar_url":"https://github.com/dyu.png","language":"Python","readme":"Originally derived from https://github.com/sazzer/cpp-build-systems\n\nStatic libs by default to work on windows (only buck does not run on windows)\n\n### Linux\nInstall g++ (4.9 or higher)\n\n### Windows\nInstall [vc build tools 2015](http://go.microsoft.com/fwlink/?LinkId=691126\u0026fixForIE=.exe).\n\nExec this before running the builds.\n```\ncall \"C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\vcvarsall.bat\" x64\n```\n\n### Tool-specific requirements\nGo to their homepage and install the their respective dependencies.\n\n## [meson](https://github.com/mesonbuild/meson)\n```sh\nmkdir meson-out \u0026\u0026 cd meson-out\nmeson .. --buildtype release\nninja\nninja test\n\n# run\n./executable\n```\n\n## [bfg9000](https://github.com/jimporter/bfg9000)\n```sh\n9k bfg9000-out\ncd bfg9000-out\nninja\nninja test\n\n# run\n./executable\n```\n\n## [cmake](https://cmake.org) with [conan](https://conan.io)\n```sh\nmkdir cmake-out \u0026\u0026 cd cmake-out\nconan install .. --build missing\ncmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release\nninja\nninja test\n\n# run\n./bin/executable\n```\n\n## [buck](https://github.com/facebook/buck)\n```sh\nbuck build //:executable\nbuck test //:shared_gtest\n\n# run\n./buck-out/gen/executable\n```\n\n## [gn](https://chromium.googlesource.com/chromium/src/tools/gn/+/HEAD/README.md)\nVery similar to [bazel](https://bazel.build) with a few [differences](https://chromium.googlesource.com/chromium/src/tools/gn/+/HEAD/docs/language.md#Differences-and-similarities-to-Blaze)\n\n### Setup\nDownload the [binary](http://refi64.com/gn-builds/) appropriate for your platform and add it to your exec PATH.\n```\n# print out your gn version (At the time of this writing, mine was 446079)\ngn --version\n\n# import the cross-platform build config/toolchain template\ngit clone --depth 1 --single-branch -b master https://github.com/dyu/gn-build build\n```\n\n### Linux\n```\ngn gen gn-out --args='gcc_cc=\"gcc\" gcc_cxx=\"g++\" is_debug=false is_clang=false is_official_build=true'\n```\n\n### Windows\n```\ngn gen gn-out --args=\"visual_studio_path=\\\"C:\\\\Program Files (x86)\\\\Microsoft Visual Studio 14.0\\\" visual_studio_version=\\\"2015\\\" is_debug=false is_clang=false is_official_build=true\"\n```\n\n```sh\nninja -C gn-out\n\n# run\n./gn-out/executable\n```\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdyu%2Fcpp-build-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdyu%2Fcpp-build-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdyu%2Fcpp-build-example/lists"}