Skip to content
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

build-protobufs now requires full protoc install #2

Open
drew-512 opened this issue Jul 24, 2019 · 3 comments
Open

build-protobufs now requires full protoc install #2

drew-512 opened this issue Jul 24, 2019 · 3 comments

Comments

@drew-512
Copy link
Member

Looks like plan-core/build-protobufs.h assumes that protoc is in the user's PATH. it used to be set up to not do this at all at this level and not require a person to do this (and just follow the instructions that were on the protobuf pages). My vision was that it was easy for visitors to build protobufs rather than do a full-blown protoc install. Does it make sense to only throw the protoc not found message if Grpc.Tools/... also can't be found? I don't want to have to mess w/ ppl's PATH just for them to build protobufs and now I'm left unable to build them on machines that don't have a full protoc install. Not getting the cons of the previous system.

@drew-512
Copy link
Member Author

@tgross I can't build build protobufs right now as I'm on the road w/ this change.

@tgross
Copy link
Collaborator

tgross commented Jul 24, 2019

My vision was that it was easy for visitors to build protobufs rather than do a full-blown protoc install.

J. Random Passerby Developer isn't going to be building the protobufs though, are they? That's going to be something that only someone creating new language bindings is going to do.

I don't want to have to mess w/ ppl's PATH

We're not messing with anyone's PATH. The directions in the plan-core README put protoc in a standard PATH location. Even if you were to skip the directions entirely and go get the tools, they'd be under $GOPATH/bin (or ~/go/bin), which will be on your PATH if you're a golang developer.

Not getting the cons of the previous system.

The primary con was that it assumed you had a GOPATH set, which isn't going to be the case by default. The fallback GOPATH (~/go) isn't set in the environment, so you can't rely on it being there and thereby rely on having a specific path like $GOPATH/src/github.com/plan-systems/plan-protobufs/Grpc.Tools available. By having that specific directory path assumed by the build-protobufs.sh script, we're making more demands on the end user to have their development environment laid in a very particular (and non-standard!) way, rather than saying "hey here's how to install protoc if you don't have it".

@tgross
Copy link
Collaborator

tgross commented Jul 24, 2019

I can't build build protobufs right now as I'm on the road w/ this change.

Sure you can: add the directory where you have protoc ($GOPATH/src/github.com/plan-systems/plan-protobufs/Grpc.Tools/tools/macosx_x64/ to your PATH

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

No branches or pull requests

2 participants