zoukankan      html  css  js  c++  java
  • VS2010调试问题

          最近在用VS2010写一个3D游戏引擎,在一个目录下构建两个项目,一个项目用于游戏引擎静态库,

    另一个用于创建实际的游戏,在编写好引擎,编译生成静态链接库后,在实际游戏编写中加入

    #pragma comment(lib, "Debug/StrandedEngine.lib"),【这里插一句#pragma comment(lib,“”)

    的用法,表示用到某个库中的函数,可能包含了它的头文件(声明部分),实现部分在这个lib文件中,

    这个就是告诉编译器链接这个lib文件(不然找不到函数的实现)】

    等游戏部分实现后,编译出错,link1104,找不到Debug/StrandedEngine.lib文件,但是在目录中确实有

    StrandedEngine.lib文件,于是在网上找解决方法跟请教同学,最后终于解决了

    原来是项目的默认路径在:比如你的项目名称是myProcject,项目目录是myProject,那么你再vs2010下执行

    你写的程序,则读写文件默认路径是myProjectmyProject,如果你双击编译好的exe文件,则默认路径是与exe位置相同的目录。

    所以#pragma comment(lib, "Debug/StrandedEngine.lib"),读不到StrandedEngine.lib,所以只要在这样子就行了

    #pragma comment(lib, "../Debug/StrandedEngine.lib")加入上一个就可以读到.lib文件了。

    第二种解决方案是:

    在链接-常规-附加库目录 添加lib库目录

    在链接-输入-附加依赖库添加lib文件

    编译器需要获取路劲跟文件名才能找到lib文件

    的实现部分。

     
  • 相关阅读:
    UML类图
    SCIM 输入法
    linux shell 快捷键
    linux find
    Extern "C"
    C++4个基本函数
    运算符号重载:前置与后置单目运算++
    Oracle数据库的安全策略
    help on IlegalStateException 关于 HttpServletRequest.getParameterMap()
    再谈时间函数
  • 原文地址:https://www.cnblogs.com/jameskun77/p/3580385.html
Copyright © 2011-2022 走看看