+ -
当前位置:首页 → 问答吧 → 一个makefile文件的错误,请帮忙指点指点,哪里错了。

一个makefile文件的错误,请帮忙指点指点,哪里错了。

时间:2011-11-28

来源:互联网

在学习makefile,在别人的基础上修改,可是一make,错误一大堆,请指点指点
以下是打印的错误信息
linux-ypov:/mnt/hgfs/wso/linuxTest/EISUAGENT_send 2005 1.1接口 # make
g++ -c -o .obj/EISUAgentcodec.o EISUAgentcodec.cpp
在包含自 EISUAgentcodec.cpp:1 的文件中:
public.h:10:20: 错误:wtypes.h:没有那个文件或目录
EISUAgentcodec.cpp:4:21: 错误:CRTDBG.H:没有那个文件或目录
public.h:55: 错误:‘WORD’ 没有命名一个类型
public.h:96: 错误:‘DWORD’ 没有命名一个类型
public.h:97: 错误:‘DWORD’ 没有命名一个类型
public.h:98: 错误:‘DWORD’ 没有命名一个类型
public.h:99: 错误:‘DWORD’ 没有命名一个类型
public.h:100: 错误:‘DWORD’ 没有命名一个类型
public.h:101: 错误:ISO C++ 不允许声明无类型的 ‘CHANNELID’
public.h:101: 错误:expected ‘;’ before ‘*’ token
public.h:102: 错误:ISO C++ 不允许声明无类型的 ‘CHANNELID’
public.h:102: 错误:expected ‘;’ before ‘*’ token
public.h:103: 错误:ISO C++ 不允许声明无类型的 ‘CHANNELID’
public.h:103: 错误:expected ‘;’ before ‘*’ token
public.h:104: 错误:ISO C++ 不允许声明无类型的 ‘CHANNELID’
public.h:104: 错误:expected ‘;’ before ‘*’ token
public.h:105: 错误:‘DWORD’ 没有命名一个类型
public.h:111: 错误:‘WORD’ 在此作用域中尚未声明
public.h:111: 错误:expected `)' before numeric constant
public.h:130: 错误:‘DWORD’ 在此作用域中尚未声明
public.h:131: 错误:‘DWORD’ 在此作用域中尚未声明
public.h:132: 错误:‘DWORD’ 在此作用域中尚未声明
public.h:133: 错误:‘DWORD’ 在此作用域中尚未声明
public.h:134: 错误:‘DWORD’ 在此作用域中尚未声明
public.h:134: 错误:expected `)' before numeric constant
public.h:143: 错误:‘DWORD’ 在此作用域中尚未声明
public.h:143: 错误:expected `}' before numeric constant
public.h:143: 错误:expected unqualified-id before numeric constant
public.h:168: 错误:expected declaration before ‘}’ token
make: *** [.obj/EISUAgentcodec.o] 错误 1
linux-ypov:/mnt/hgfs/wso/linuxTest/EISUAGENT_send 2005 1.1接口 #

作者: ljd680   发布时间: 2011-11-28

‘WORD’ 没有命名一个类型: WORD没定义,你这源代码会不会是windows版本的?
DWORD也没有定义。

作者: JoeBlackzqq   发布时间: 2011-11-28

估计是将windows程序放到linux下了
这个是有问题的
你的程序不是用标准的C/C++写的,它与平台有关的,程序中有windows的一些定义,是不能在linux下编译的

作者: keiy   发布时间: 2011-11-28

如果代码是跨平台的话,可能是有些宏定义没有加,导致编译失败

作者: fox000002   发布时间: 2011-11-28

楼主把定义WORD和DWORD之类的文件加进去

作者: hnwyllmm   发布时间: 2011-11-28

public.h:10:20: 错误:wtypes.h:没有那个文件或目录
很明显wtypes.h找不到, 有可能是确实不存在, 也有可能是找不到, 你需要设置flags也就是搜索头文件目录。

一旦解决这个文件问题, 估计后面的问题也就都不存在了。

作者: xiangpengmeng   发布时间: 2011-12-04