• Create Account

## Linker errors but I have the libraries linked (Release)

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

3 replies to this topic

### #1Inuyashakagome16  Members

836
Like
0Likes
Like

Posted 11 January 2013 - 01:41 PM

1>------ Build started: Project: DXFP, Configuration: Release Win32 ------
1>main.obj : error LNK2001: unresolved external symbol _D3DX11CompileFromFileW@44
1>main.obj : error LNK2001: unresolved external symbol _GUID_SysMouse
1>main.obj : error LNK2001: unresolved external symbol _c_dfDIMouse
1>main.obj : error LNK2001: unresolved external symbol _c_dfDIKeyboard
1>main.obj : error LNK2001: unresolved external symbol _D3D11CreateDeviceAndSwapChain@48
1>main.obj : error LNK2001: unresolved external symbol _IID_IDirectInput8W
1>main.obj : error LNK2001: unresolved external symbol _GUID_SysKeyboard
1>main.obj : error LNK2001: unresolved external symbol _CreateDXGIFactory1@8
1>main.obj : error LNK2001: unresolved external symbol _DirectInput8Create@20
1>main.obj : error LNK2001: unresolved external symbol __imp__DWriteCreateFactory@12
1>main.obj : error LNK2001: unresolved external symbol _D2D1CreateFactory@16
1>main.obj : error LNK2001: unresolved external symbol _D3DX11CreateShaderResourceViewFromFileW@24
1>main.obj : error LNK2001: unresolved external symbol _D3D10CreateDevice1@28

Nice little section of errors. This happens when I build in release. Works fine in debug. In release I DID link the libraries in the properties (both directories and libraries)

#pragma comment(lib, "d3d11.lib")
#pragma comment(lib, "d3dx11.lib")
#pragma comment(lib, "d3dx10.lib")
#pragma comment (lib, "D3D10_1.lib")
#pragma comment (lib, "DXGI.lib")
#pragma comment (lib, "D2D1.lib")
#pragma comment (lib, "dwrite.lib")
//#pragma comment(lib, "DXErr.lib")
#pragma comment(lib, "dinput8.lib")
#pragma comment(lib, "dxguid.lib")
#pragma comment(lib, "d3d9.lib")
#pragma comment(lib, "d3dx9.lib")

//#include <DxErr.h>
#include <windows.h>
#include <d3d11.h>
#include <d3dx11.h>
#include <d3dx10.h>
#include <xnamath.h>
#include <D3D10_1.h>
#include <DXGI.h>
#include <D2D1.h>
#include <sstream>
#include <dwrite.h>
#include <dinput.h>
#include <D3DX11async.h>

And that is the top of my main.cpp (the only file i have right now)

I'm really not sure what i'm missing.

> Libraries linked in Release :

D3D10.lib;d3d11.lib;d3dx11.lib;D3DCompiler.lib;dxerr.lib;dxgi.lib;dxguid.lib;dinput8.lib;D2D1.lib;dwrite.lib;d3d9.lib;d3dx9.lib;D3D10_1.lib;%(AdditionalDependencies)

### #2Zaoshi Kaba  Members

7808
Like
1Likes
Like

Posted 11 January 2013 - 11:55 PM

Are you linking Release libraries? Debug might not work, not sure what kind of error it would throw though.

Edit:
I just checked out and cannot find debug/release .libs, seems there's no difference.

Have you tried to enable linker's messages to see if it's actually using those libraries?

Edited by Zaoshi Kaba, 12 January 2013 - 12:00 AM.

### #3Inuyashakagome16  Members

836
Like
0Likes
Like

Posted 12 January 2013 - 08:33 AM

I enabled it and it seems (while I was in settings) that there was a directory not included for some reason, even though I set it previously. -____- Terrible feels man.

Thanks! I had heard of the linker messages but I wasn't sure what I could use them for, but now I have them enabled so i'm sure they'll help soon.

### #4Khatharr  Members

7735
Like
0Likes
Like

Posted 13 January 2013 - 03:05 AM

I think you're not supposed to link dxguid.lib anymore. Instead you have to #include <InitGuid.h> along with any DX stuff that uses guids.
void hurrrrrrrr() {__asm sub [ebp+4],5;}

There are ten kinds of people in this world: those who understand binary and those who don't.

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.