Cap'n Proto - 如何编译生成的 C++ 文件
Cap'n Proto - How to compile the generated C++ file
我是 Cap'n Proto 的新手,我正在尝试编译此处找到的计算器示例:
https://github.com/capnproto/capnproto/blob/master/c%2B%2B/samples/calculator.capnp
我使用此命令 capnp compile -oc++ calculator.capnp
生成了 calculator.capnp.c++
和 calculator.capnp.h
文件。
我尝试使用以下命令编译 calculator.capnp.c++
文件:g++ -o calc calculator.capnp.c++ -lcapnp -lkj -lcapnp-rpc -lkj-async
但我收到此错误消息:
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o: in function '_start':
(.text+0x20): undefined reference to 'main'
collect2: error: ld returned 1 exit status
我查看了官方文档和其他资源,但没有找到有关如何 运行 这个示例(或类似内容)的说明。我该如何着手 运行 呢?
您没有构建 整个 样本,只构建了生成的协议文件。
注意 repo 还有 calculator-server.c++
和 calculator-client.c++
,它们都包含 main
入口函数。选择一个并 link 将其添加到您的程序中。
如果您使用已经提供的CMakeLists.txt,这已经为您完成了。
我是 Cap'n Proto 的新手,我正在尝试编译此处找到的计算器示例: https://github.com/capnproto/capnproto/blob/master/c%2B%2B/samples/calculator.capnp
我使用此命令 capnp compile -oc++ calculator.capnp
生成了 calculator.capnp.c++
和 calculator.capnp.h
文件。
我尝试使用以下命令编译 calculator.capnp.c++
文件:g++ -o calc calculator.capnp.c++ -lcapnp -lkj -lcapnp-rpc -lkj-async
但我收到此错误消息:
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o: in function '_start': (.text+0x20): undefined reference to 'main' collect2: error: ld returned 1 exit status
我查看了官方文档和其他资源,但没有找到有关如何 运行 这个示例(或类似内容)的说明。我该如何着手 运行 呢?
您没有构建 整个 样本,只构建了生成的协议文件。
注意 repo 还有 calculator-server.c++
和 calculator-client.c++
,它们都包含 main
入口函数。选择一个并 link 将其添加到您的程序中。
如果您使用已经提供的CMakeLists.txt,这已经为您完成了。