From 59ca5c1f5b07dcb34df00379fcd9c456c7b0eea4 Mon Sep 17 00:00:00 2001 From: Ben Kuehnert Date: Sun, 7 May 2023 22:58:14 +0000 Subject: [PATCH] Update install instructions to note issue #402 --- README.md | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 438316f1..bfaf6819 100644 --- a/README.md +++ b/README.md @@ -17,12 +17,24 @@ Common Lisp. Common Lisp code for a given `.proto` file is generated by a plug-in for `protoc`, the protocol buffer compiler. The plug-in is written in C++ and - requires the full version of Google's protocol buffer code to be installed - in order to build it, not just the precompiled protoc binaries. + requires Google's protocol buffer compiler as well as the development headers. - Download and build Google protobuf. Rough instructions are included here for - Unix systems. If you have any problems please see the - [protobuf installation instructions](https://github.com/protocolbuffers/protobuf/tree/master/src). + **Warning** + Due to `protoc`'s dependence on Abseil in v22, the headers required to install + the lisp plugin are no longer included. We are actively working on fixing + this dependency (#402). Until then, you will need to install a version of + protobuf older than v22, but at least v3.15. + + The compiler and development headers can be installed via package manager. + ### Ubuntu 22.04 + ```shell + sudo apt install protobuf-compiler libprotobuf-dev libprotoc-dev + ``` + + ### From source + To install from source, rough instructions are included here to install + protoc v21 on Unix systems. If you have any problems please see the + [protobuf installation instructions](https://github.com/protocolbuffers/protobuf/blob/21.x/src/README.md). ```shell $ git clone --recursive https://github.com/google/protobuf @@ -39,9 +51,13 @@ Common Lisp. 2. Build the Lisp `protoc` plugin + If you installed protoc via package manager, set `PROTOC_ROOT` to `/usr`. If + you installed it from source using the instructions above, use the value of + `--prefix` that you used. + ```shell $ cd cl-protobufs/protoc - $ PROTOC_ROOT=/usr/local make # value of --prefix, above + $ PROTOC_ROOT=/usr/local make $ sudo cp protoc-gen-cl-pb /usr/local/bin/ ```