{"id":19582958,"url":"https://github.com/tripwire/protoc-gem","last_synced_at":"2026-01-24T16:44:16.027Z","repository":{"id":47802929,"uuid":"55429639","full_name":"Tripwire/protoc-gem","owner":"Tripwire","description":"A ruby gem that includes protoc binaries for various platforms","archived":false,"fork":false,"pushed_at":"2023-04-17T03:40:31.000Z","size":16110,"stargazers_count":0,"open_issues_count":2,"forks_count":1,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-11-10T02:29:01.722Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Tripwire.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-04-04T17:09:01.000Z","updated_at":"2021-08-12T23:38:53.000Z","dependencies_parsed_at":"2022-09-05T02:42:06.549Z","dependency_job_id":null,"html_url":"https://github.com/Tripwire/protoc-gem","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tripwire%2Fprotoc-gem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tripwire%2Fprotoc-gem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tripwire%2Fprotoc-gem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tripwire%2Fprotoc-gem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Tripwire","download_url":"https://codeload.github.com/Tripwire/protoc-gem/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224068884,"owners_count":17250436,"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":[],"created_at":"2024-11-11T07:38:49.635Z","updated_at":"2026-01-24T16:44:15.998Z","avatar_url":"https://github.com/Tripwire.png","language":"Ruby","readme":"protoc\n==================\n\nThis gem includes protoc, the protobuf compiler, binaries for Linux, Mac, Windows and AIX. It installs a executable shim\ncalled `protoc` that picks the right one to run on your platform. You can use this gem to ensure that you have a protoc\nof the version you need. By using this gem, you will not need to manually install the right protoc on your hosts.\n\nThe pre-built linux protoc binaries are not compatible with all systems.  For this reason the protobuf source code is\nincluded in this gem, and a new protoc binary is built upon gem installation when the pre-built one does not function.\n\n## Suggested Use\n\nPut `protoc` in your Gemfile, with the version of protobuf that you need.\n\n```\ndepends 'protoc', '2.6.1'\n```\n\nRun `protoc` using `bundle exec`. This ensures that you run `protoc` from this gem.\n\n```\n$ bundle exec protoc --version\nlibprotoc 2.6.1\n```\n\n## Binaries\n\nThe protoc binaries included in this gem  (with the exception of the AIX binary) came from the artifact\n[available in Maven Central](http://search.maven.org/#artifactdetails%7Ccom.google.protobuf%7Cprotoc%7C2.6.1%7Cpom).\n\nAn AIX compatible binary has been added to the /bin folder, as the version of protobuf being used does not compile correctly when attempting to install the gem on AIX.  \n\nA compilation on AIX fails as a result of the wrong header file being used when the AIX platform is detected.  The fix applied was as follows:\n\nIn the file: ```../protoc-gem/ext/protoc/protobuf/src/google/protobuf/stubs/atomicops.h```\n\n```\n// AIX\n#elif defined(GOOGLE_PROTOBUF_OS_AIX)\n#include \u003cgoogle/protobuf/stubs/atomicops_internals_power.h\u003e\n```\n\nwas changed to:\n\n```\n// AIX\n#elif defined(GOOGLE_PROTOBUF_OS_AIX)\n#include \u003cgoogle/protobuf/stubs/atomicops_internals_generic_gcc.h\u003e\n```\n\n\nMD5 (protoc-2.6.1-aix-powerpc) = ```23945207b57158d5353a48a366b8fda4```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftripwire%2Fprotoc-gem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftripwire%2Fprotoc-gem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftripwire%2Fprotoc-gem/lists"}