问题描述
- 缺库的问题,在32下是可执行的
-
错误 4 error LNK2019: 无法解析的外部符号 "long __cdecl DirectX::CreateDDSTextureFromFile(struct ID3D11Device *,wchar_t const *,struct ID3D11Resource * *,struct ID3D11ShaderResourceView * *,unsigned __int64,enum DirectX::DDS_ALPHA_MODE *)" (?CreateDDSTextureFromFile@DirectX@@YAJPEAUID3D11Device@@PEB_WPEAPEAUID3D11Resource@@PEAPEAUID3D11ShaderResourceView@@_KPEAW4DDS_ALPHA_MODE@1@@Z),该符号在函数 "public: bool __cdecl CrystalMeshInstance::createTextures(struct ID3D11Device *)" (?createTextures@CrystalMeshInstance@@QEAA_NPEAUID3D11Device@@@Z) 中被引用
解决方案
dirextx的lib库没有link。
解决方案二:
为了把你需要的库文件加载到project当中,有两种方法。
第一种(不推荐):
在菜单 project ->settings -> link -> object/library modules 下面按格式输入你需要的库文件 然后确定即可。
或者在VS里,工程->属性->配置属性->链接器->输入,在"附加依赖项"框最后加上你需要的库文件,前面记得加分号隔开。
第二种:
在头文件中加入语句#pragma comment( lib, "你需要的库文件" ) 来显式加载, 即:
#include <你需要的库文件.h>
#pragma comment(lib, "你需要的库文件")
这样下次copy代码编译就行了,不用再配置。
你应该需要的是dirextx的lib库,所以找到相应的文件加入工程就好了
时间: 2024-10-26 12:52:22