标签:链接 makefile 文件的 inux 标准 一个 函数定义 情况 thrift
应用环境Ubuntu1 编译
问题1: configure:error: "Error: libcrypto required."
解决:apt-getinstall libssl-dev
问题2:uint32_tdoes not name a type
解决:
uint32_t定义文件在stdint.h,通过whereis stdint.h
stdint.h: /usr/include/stdint.h
说明在标准的include路径下,将出现编译错误的源码文件中添加#include<stdint.h>
问题3:Makefile文件的BOOST库路径指定错误
解决:
MakeFile文件中:BOOST_DIR = /usr/local/include/boost
而实际的情况却是:BOOST_DIR=/usr/include/boost
# apt-get installlibboost-dev
已经安装成功,但是不清楚安装的位置
查找本地boost库的安装目录:
whereis boost
boost:/usr/include/boost
问题 4:ntohs 存在未定义的编译错误
解决:
包含头文件#include<arpa/inet.h>
问题5:编译例子出现thrift库函数大量未定义的编译错误
解决:
主要是链接-lthrift必须放在CppClient.cppCppServer.cpp的后面,修改Makefile文件,调整两者的顺序即可。当某一个源码文件编译找不到函数定义的时候,只会往后查找函数定义
标签:链接 makefile 文件的 inux 标准 一个 函数定义 情况 thrift
原文地址:http://blog.51cto.com/fengyuzaitu/2071767