c++mfcinstantclient

VS2017 building app shows error LNK1181 cannot open input file 'C:\instantclient_19_3\sdk\lib\msvc\oraocci19d.lib


I am using VS 2017 for a legacy MFC app.

I have Oracle 19.13.0 installed and I downloaded intantclient_19_18 SDK Package (instantclient-sdk-windows.x64-19.18.0.0.0dbru.zip from https://www.oracle.com/ca-fr/database/technologies/instant-client/winx64-64-downloads.html) and unzipped in my C: folder, so I have it installed in my C drive like:

C:\instantclient_19_18.

Then I went to Project->Properties->Configuration Properties->C/C++->Additional Include Directories and add path to my C:\instantclient_19_18\sdk\include folder

enter image description here

I also went to Project->Properties->Configuration Properties->Linker->General->Additional Library Directories and add path to my C:\instantclient_19_18\sdk\lib\msvc to tell the linker where to find Oracle libraries.

enter image description here

If I build my project now, I am getting error:

LNK1181 cannot open input file 'C:\instantclient_19_3\sdk\lib\msvc\oraocci19d.lib

I am just starting to work in C++ and would appreciate help to resolve this error. Thank you.


Solution

  • The error:

    LNK1181 cannot open input file 'C:\instantclient_19_3\sdk\lib\msvc\oraocci19d.lib

    usually means 1 or more of the following: 1) The path or file name is incorrect, 2) You are mixing 32 and 64 bit, or 3) The file is corrupt.

    From the naming of the download I expect that you are installing a 64 bit binary while your IDE shows you are building a 32 bit application. You need a 32 bit compiled library you can not mix and match.