• 几个调试错误


    #1,报错1

    LINK : fatal error LNK1104: cannot open file 'D:…MyProj.exe'

    原因:可能是.exe已经在运行,所以程序无法打开同一个.exe可执行程序,当前这是我在VS中编译链接时遇到的问题;

    解决办法:关掉已有的.exe,再运行程序。

    #2,报错

    c:program filesoostoost_1_47oostasiodetailsocket_types.hpp(22): fatal error C1189: #error : WinSock.h has already been included

    原因:未明;

    解决办法:将boost/asio.hpp放到windows.h前面。

    延伸:ACE中有个类似问题,所以需要将OS.h放到最前面。

    #3,报错

    fatal error C1083: 无法打开预编译头文件

    原因:编译器一般都是以文件为单位进行编译,如果修改了工程中的一个文件,那么将导致所有文件都要从新编译,这样的编译将耗费很长时间。为了提高编译速度,将那些不常被修改,比较稳定,文件单独包含到一个指定的头文件中, 然后生成一个预编译头文件 *.pch 。 VC中默认的头文件为 stdAfx.h, 但光有头文件无法编译,所以还要用到 StdAfx.cpp里只包含一句有效代码,这样编译时,通过编译 stdAfx.cpp就把大部分系统头文件编译进来, Debug目录下便会产生一个 存储了预编译信息的 *.pch 文件。如果 *.pch文件损坏或者不存在,就会出现,题目所示的无法打开预编译头文件的错。

    解决办法:步骤/方法右键点击你创建的项目,选择“属性标签”点击属性,弹出“项目属性页”,在左侧找到以下位置  配置属性 -->  C/C++  --> 预编译头,并选择它:在右边的菜单中选择 “创建/使用预编译头”中的“不使用预编译头文件”点击“确定”按钮退出即可原因分析。

    #4,报错

    C:Program Files (x86)Microsoft SDKsWindowsv7.0Aincludewinspool.h(1187): error C2872: “ACCESS_MASK”: 不明确的符号

    原因:using namespace cv和windows.h中ACCESS_MASK定义冲突;

    解决办法:注释掉using namespace cv,再所有需要用到cv的地方加cv::

    都是在创建dll工程的时候实际遇到的问题,特此记录。

  • 相关阅读:
    HAOI2015 树上染色
    HAOI2010 软件安装
    T2 Func<in T1,out T2>(T1 arg)
    事无巨细
    LitJson JavaScriptSerializer
    数据库操作
    jQuery:总体掌握
    sql一个题的解法分析讲解
    Javascript系列:总体理解
    c#
  • 原文地址:https://www.cnblogs.com/sophia-hxw/p/6132654.html
Copyright © 2020-2023  润新知