代码拉取完成,页面将自动刷新
【标题描述】
master代码,根据https://gitee.com/openeuler/iSulad/blob/master/docs/build_guide.md
编译失败。
错误为:
[100%] Built target isula
CMakeFiles/isulad.dir/daemon/entry/connect/metrics/metrics_service.c.o: In function `metrics_get_by_type_cb':
/home/./iSula/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:69: undefined reference to `evhtp_send_reply'
/home/./iSula/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:62: undefined reference to `evhtp_kv_new'
/home/./iSula/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:62: undefined reference to `evhtp_kvs_add_kv'
/home/./iSula/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:64: undefined reference to `evbuffer_add'
我认为src/CMakeLists.txt一处配置不正确。在GRPC_CONNECTOR使能的情况下,要包含EVHTP_LIBRARY,请核对:
if ( GRPC_CONNECTOR )
target_link_libraries(libisula -Wl,--as-needed -lstdc++)
target_link_libraries(libisula -Wl,--as-needed ${PROTOBUF_LIBRARY})
target_link_libraries(libisula -Wl,--no-as-needed ${GRPC_PP_REFLECTION_LIBRARY} ${GRPC_PP_LIBRARY} ${GRPC_LIBRARY} ${GPR_LIBRARY})
else()
target_link_libraries(libisula ${EVHTP_LIBRARY} ${EVENT_LIBRARY} ${ZLIB_LIBRARY} -ldl libhttpclient)
endif()
【环境信息】
硬件信息:
1) X86_64
2) -
软件信息:
1) Ubuntu 16.04
2) 4.9
3) iSulad
如果有特殊组网,请提供网络拓扑图
【问题复现步骤】
【预期结果】
描述预期结果,可以通过对比新老版本获取
【实际结果】
描述出问题的结果
【附件信息】
这块儿应该是iSulad.spec里面少了运行依赖,build文档没有列全,在使能metrics_server或者rest_server的时候需要libevent.so和libevhtp.so两个库的支持。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
Hi gaohuatao,
我在 Ubuntu 18.04 下编译也遇到类似错误,检查 /usr/local/lib 下已存在 libevhtp.so。
报错如下
[ 87%] Linking CXX executable isulad
CMakeFiles/isulad.dir/daemon/entry/connect/metrics/metrics_service.c.o: In function `metrics_get_by_type_cb':
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:69: undefined reference to `evhtp_send_reply'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:62: undefined reference to `evhtp_kv_new'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:62: undefined reference to `evhtp_kvs_add_kv'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:64: undefined reference to `evbuffer_add'
CMakeFiles/isulad.dir/daemon/entry/connect/metrics/metrics_service.c.o: In function `metrics_server_thrd':
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:80: undefined reference to `event_base_new'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:86: undefined reference to `evhtp_new'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:92: undefined reference to `evhtp_set_cb'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:93: undefined reference to `evhtp_use_dynamic_threads'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:97: undefined reference to `evhtp_bind_socket'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:102: undefined reference to `event_base_loop'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:107: undefined reference to `evhtp_free'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:110: undefined reference to `event_base_free'
CMakeFiles/isulad.dir/daemon/entry/connect/metrics/metrics_service.c.o: In function `metrics_service_shutdown':
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:150: undefined reference to `evhtp_unbind_socket'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:151: undefined reference to `evhtp_free'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:157: undefined reference to `event_base_loopbreak'
/tmp/build_isulad/iSulad/src/daemon/entry/connect/metrics/metrics_service.c:158: undefined reference to `event_base_free'
collect2: error: ld returned 1 exit status
src/CMakeFiles/isulad.dir/build.make:4199: recipe for target 'src/isulad' failed
make[2]: *** [src/isulad] Error 1
CMakeFiles/Makefile2:105: recipe for target 'src/CMakeFiles/isulad.dir/all' failed
make[1]: *** [src/CMakeFiles/isulad.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 87%] Linking CXX shared library libisula.so
[ 87%] Built target libisula
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
@wangfengtu 关联一下pr
已知问题,关闭issue
/close
登录 后才可以发表评论