【QT笔记】Linux下QT编程pro文件所需库

grpc官方给的资料linux下C++方面好像比较多都是用的Makefile,但是qt写pro的时候就很愁不知道要哪些库,摸索着加了一些,写了个小栗子包括服务器客户端,经测试正常,下面是pro文件中先关依赖的写法

unix{#表示Linux环境的特殊设置,这个大括号不能单独放在下一行,否则编译会报错
    #LIBS += #包含项目需要用到的共享库,注意文件名多了关键字"lib",扩展名是.so
    INCLUDEPATH+=lgrpc/include
    LIBS += -Llgrpc/libs/ -laddress_sorting
    LIBS += -Llgrpc/libs/  -lgrpc++_unsecure
    LIBS += -Llgrpc/libs/  -lprotobuf
    LIBS += -Llgrpc/libs/  -lgrpc_unsecure
    LIBS += -Llgrpc/libs/  -lgpr
    LIBS += -Llgrpc/libs/  -lgrpc
    LIBS += -Llgrpc/libs/  -lgrpc++
    LIBS += -Llgrpc/libs/  -lgrpc_cronet
    LIBS += -Llgrpc/libs/  -lgrpc++_cronet
    LIBS += -Llgrpc/libs/  -lgrpc++_error_details
    LIBS += -Llgrpc/libs/  -lgrpcpp_channelz
    LIBS += -Llgrpc/libs/  -lgrpc++_reflection


}

需要注意的是,这里对LIBS 的顺序有要求,最好按照我这个顺序来吧,不然可能会报错无法解析DNS什么的

E0625 16:35:08.313000000  2260 resolver_registry.cc:80] don't know how to resolve 'localhost:50051' or 'dns:///localhost:50051'
E0625 16:35:08.316000000  2260 resolver_registry.cc:80] don't know how to resolve 'dns:///localhost:50051' or 'dns:///dns:///localhost:50051'
E0625 16:35:08.318000000  2260 channel.cc:95] channel stack builder failed: {"created":"@1529915708.318000000","description":"resolver creation failed","file":"E:\gRPC\grpc\src\core\ext\filters\client_channel\client_channel.cc","file_line":695}
2: lame client channel

https://github.com/tnie/quote-demo/issues/9 参考这个网址,我自己猜可能是grpc++_unsecure这个库要在grpc_unsecure前面

上一篇:linux – 使用依赖于另一个库的库的CMake项目


下一篇:Java 工程打包成库需要依赖其它外部库的打包方式