artyom-beilis / dlprimitives

Deep Learning Primitives and Mini-Framework for OpenCL
http://blog.dlprimitives.org/
MIT License
169 stars 16 forks source link

if protobuf compiler test_gemm compilation fails with: *** target pattern contains no '%'. Stop. #38

Open berndporr opened 1 week ago

berndporr commented 1 week ago

It took me quite a while to fix this as the error message is completely opaque:

CMakeFiles/dlprim_onnx.dir/build.make:73: *** target pattern contains no '%'. Stop.
make[1]: *** [CMakeFiles/Makefile2:515: CMakeFiles/dlprim_onnx.dir/all] Error 2

cmake generates protobuf::protoc as a placeholder when the protoc is not found. See here: https://github.com/Ultimaker/libArcus/issues/108#issuecomment-2003174240

It's fixed with installing the protobuf compiler:

sudo apt install protobuf-compiler

It would be good to check in the cmake script if the compiler exists but not sure how to do that!

artyom-beilis commented 1 week ago

Strange. FindProtobuf cmake does not even have a category for protobuf compiler. I expected it to fail building onnx code.

berndporr commented 1 week ago

Indeed strange. One would expect that failing as you said.