Yet another LNK2019: unresolved external symbol - unresolved-external

I'm creating a backbone for a school project, but I'm running into "unresolved external symbol" errors. According to previous problems mentioned on this site, I think have to manually link my project to a .lib file. Problem is, I don't know exactly which .lib I need to link to. Can someone explain like I'm twelve?
1>------ Build started: Project: Birthday311, Configuration: Debug Win32 ------
1>Build started 2/2/2012 07:55:30 PM.
1>InitializeBuildStatus:
1> Touching "Debug\Birthday311.unsuccessfulbuild".
1>ClCompile:
1> All outputs are up-to-date.
1>ManifestResourceCompile:
1> All outputs are up-to-date.
1>birthday_test.obj : error LNK2019: unresolved external symbol "public: int __thiscall Birthday::getDay(void)const " (?getDay#Birthday##QBEHXZ) referenced in function "void __cdecl test_class_Birthday_default_ctor(class Tester &)" (?test_class_Birthday_default_ctor##YAXAAVTester###Z)
1>birthday_test.obj : error LNK2019: unresolved external symbol "public: int __thiscall Birthday::getMonth(void)const " (?getMonth#Birthday##QBEHXZ) referenced in function "void __cdecl test_class_Birthday_default_ctor(class Tester &)" (?test_class_Birthday_default_ctor##YAXAAVTester###Z)
1>birthday_test.obj : error LNK2019: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall Birthday::getName(void)const " (?getName#Birthday##QBE?AV?$basic_string#DU?$char_traits#D#std##V?$allocator#D#2##std##XZ) referenced in function "void __cdecl test_class_Birthday_default_ctor(class Tester &)" (?test_class_Birthday_default_ctor##YAXAAVTester###Z)
1>C:\Users\Ender\Documents\Visual Studio 2010\Projects\Birthday311\Debug\Birthday311.exe : fatal error LNK1120: 3 unresolved externals

Seems like you didn't actually implement the functions getDay, getMonth, and getName.

Related

Allegro Installation

I've been trying to install allegro 5 into MSVS 2015 for 3 hours now, and have seen many tutorials, none of which helped me. I am using the code on the tutorial wiki to just make a screen.
#include "windows.h"
#include <stdio.h>
#include <allegro5/allegro.h>
int main(int argc, char **argv)
{
ALLEGRO_DISPLAY *display = NULL;
if (!al_init()) {
fprintf(stderr, "failed to initialize allegro!\n");
return -1;
}
display = al_create_display(640, 480);
if (!display) {
fprintf(stderr, "failed to create display!\n");
return -1;
}
al_clear_to_color(al_map_rgb(0, 0, 0));
al_flip_display();
al_rest(10.0);
al_destroy_display(display);
return 0;
}
This is the error I get.
1>------ Build started: Project: Project7, Configuration: Debug Win32 ------
1> Source.cpp
1>Source.obj : error LNK2019: unresolved external symbol _al_rest referenced in function _main
1>Source.obj : error LNK2019: unresolved external symbol _al_map_rgb referenced in function _main
1>Source.obj : error LNK2019: unresolved external symbol _al_create_display referenced in function _main
1>Source.obj : error LNK2019: unresolved external symbol _al_destroy_display referenced in function _main
1>Source.obj : error LNK2019: unresolved external symbol _al_flip_display referenced in function _main
1>Source.obj : error LNK2019: unresolved external symbol _al_clear_to_color referenced in function _main
1>Source.obj : error LNK2019: unresolved external symbol _al_install_system referenced in function _main
1>c:\users\jacob\documents\visual studio 2015\Projects\Project7\Debug\Project7.exe : fatal error LNK1120: 7 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Anything helps, thanks.
Unresolved external symbol implies a compile-time linker error. When you downloaded Allegro, it will have come with a collection of resources:
includes (.h/.hpp): These are header files which define what functions exist within the library, but will not actually contain the function code themselves.
libraries (.lib): These files contain pre-compiled code and need to be linked to your project.
dlls (.dll): DLLs aren't always used when you have other library resources, however they support runtime linkage and need to be distributed with your application in order for it to run correctly.
Linker Errors
You are most likely missing a link to your libraries. In Visual studio, you can add references to libraries by right clicking on your project in the solution explorer and navigating to the linker section.
You will need to add the path to the "lib" folder in your allegro download. This can be done by adding the filepath to the additional library dependencies field.
Hope this helps!

install pyscopg2 on windows 7 64 bits + python 3.4

I've read several links about that.
If I try the python port for windows: I'm using python 3.4 so it fails.
For both downloading the archive + "setup.py install" or "pip install pyscopg2" I got the below error. I had visual studio 2012 installed, I installed a 2010 version to get rid of "vcvarsall.bat not found"
ERROR:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\link.exe /DLL /nologo /INCREMENTAL:NO /LIBPATH:C:\Python34\libs /LIBPATH:C:\Python34\PCbuild /LIBPATH:C:/PROGRA~1/POSTGR~1/9.3/lib ws2_32.lib advapi32.lib secur32.lib libpq.lib shfolder.lib build\temp.win32-3.4\Release\psycopg\psycopgmodule.obj build\temp.win32-3.4\Release\psycopg\green.obj build\temp.win32-3.4\Release\psycopg\pqpath.obj build\temp.win32-3.4\Release\psycopg\utils.obj build\temp.win32-3.4\Release\psycopg\bytes_format.obj build\temp.win32-3.4\Release\psycopg\connection_int.obj build\temp.win32-3.4\Release\psycopg\connection_type.obj build\temp.win32-3.4\Release\psycopg\cursor_int.obj build\temp.win32-3.4\Release\psycopg\cursor_type.obj build\temp.win32-3.4\Release\psycopg\diagnostics_type.obj build\temp.win32-3.4\Release\psycopg\error_type.obj build\temp.win32-3.4\Release\psycopg\lobject_int.obj build\temp.win32-3.4\Release\psycopg\lobject_type.obj build\temp.win32-3.4\Release\psycopg\notify_type.obj build\temp.
win32-3.4\Release\psycopg\xid_type.obj build\temp.win32-3.4\Release\psycopg\adapter_asis.obj build\temp.win32-3.4\Release\psycopg\adapter_binary.obj build\temp.win32-3.4\Release\psycopg\adapter_datetime.obj build\temp.win32-3.4\Release\psycopg\adapter_list.obj build\temp.win32-3.4\Release\psycopg\adapter_pboolean.obj build\temp.win32-3.4\Release\psycopg\adapter_pdecimal.obj build\temp.win32-3.4\Release\psycopg\adapter_pint.obj build\temp.win32-3.4\Release\psycopg\adapter_pfloat.obj build\temp.win32-3.4\Release\psycopg\adapter_qstring.obj build\temp.win32-3.4\Release\psycopg\microprotocols.obj build\temp.win32-3.4\Release\psycopg\microprotocols_proto.obj build\temp.win32-3.4\Release\psycopg\typecast.obj /OUT:build\lib.win32-3.4\psycopg2\_psycopg.pyd /IMPLIB:build\temp.win32-3.4\Release\psycopg\_psycopg.lib /MANIFESTFILE:build\temp.win32-3.4\Release\psycopg\_psycopg.pyd.manifest
Creating library build\temp.win32-3.4\Release\psycopg\_psycopg.lib and object build\temp.win32-3.4\Release\psycopg\_psycopg.exp
pqpath.obj : error LNK2019: unresolved external symbol _PQclear referenced in function _pq_raise
connection_int.obj : error LNK2001: unresolved external symbol _PQclear
cursor_type.obj : error LNK2001: unresolved external symbol _PQclear
error_type.obj : error LNK2001: unresolved external symbol _PQclear
pqpath.obj : error LNK2019: unresolved external symbol _PQerrorMessage referenced in function _pq_raise
connection_int.obj : error LNK2001: unresolved external symbol _PQerrorMessage
lobject_int.obj : error LNK2001: unresolved external symbol _PQerrorMessage
pqpath.obj : error LNK2019: unresolved external symbol _PQresultErrorField referenced in function _pq_raise
diagnostics_type.obj : error LNK2001: unresolved external symbol _PQresultErrorField
pqpath.obj : error LNK2019: unresolved external symbol _PQresultErrorMessage referenced in function _pq_raise
pqpath.obj : error LNK2019: unresolved external symbol _PQstatus referenced in function _pq_raise
connection_int.obj : error LNK2001: unresolved external symbol _PQstatus
pqpath.obj : error LNK2019: unresolved external symbol _PQgetResult referenced in function _pq_clear_async
pqpath.obj : error LNK2019: unresolved external symbol _PQsetnonblocking referenced in function _pq_set_non_blocking
pqpath.obj : error LNK2019: unresolved external symbol _PQresultStatus referenced in function _pq_execute_command_locked
connection_int.obj : error LNK2001: unresolved external symbol _PQresultStatus
pqpath.obj : error LNK2019: unresolved external symbol _PQexec referenced in function _pq_execute_command_locked
pqpath.obj : error LNK2019: unresolved external symbol _PQgetvalue referenced in function _pq_get_guc_locked
cursor_type.obj : error LNK2001: unresolved external symbol _PQgetvalue
pqpath.obj : error LNK2019: unresolved external symbol _PQisBusy referenced in function _pq_is_busy
pqpath.obj : error LNK2019: unresolved external symbol _PQconsumeInput referenced in function _pq_is_busy
pqpath.obj : error LNK2019: unresolved external symbol _PQflush referenced in function _pq_flush
connection_int.obj : error LNK2001: unresolved external symbol _PQflush
pqpath.obj : error LNK2019: unresolved external symbol _PQsendQuery referenced in function _pq_send_query
pqpath.obj : error LNK2019: unresolved external symbol _PQfname referenced in function __pq_fetch_tuples
pqpath.obj : error LNK2019: unresolved external symbol _PQfmod referenced in function __pq_fetch_tuples
pqpath.obj : error LNK2019: unresolved external symbol _PQfsize referenced in function __pq_fetch_tuples
pqpath.obj : error LNK2019: unresolved external symbol _PQftype referenced in function __pq_fetch_tuples
pqpath.obj : error LNK2019: unresolved external symbol _PQbinaryTuples referenced in function __pq_fetch_tuples
pqpath.obj : error LNK2019: unresolved external symbol _PQnfields referenced in function __pq_fetch_tuples
cursor_type.obj : error LNK2001: unresolved external symbol _PQnfields
pqpath.obj : error LNK2019: unresolved external symbol _PQputCopyEnd referenced in function __pq_copy_in_v3
pqpath.obj : error LNK2019: unresolved external symbol _PQputCopyData referenced in function __pq_copy_in_v3
pqpath.obj : error LNK2019: unresolved external symbol _PQfreemem referenced in function __pq_copy_out_v3
connection_int.obj : error LNK2001: unresolved external symbol _PQfreemem
adapter_binary.obj : error LNK2001: unresolved external symbol _PQfreemem
pqpath.obj : error LNK2019: unresolved external symbol _PQgetCopyData referenced in function __pq_copy_out_v3
pqpath.obj : error LNK2019: unresolved external symbol _PQntuples referenced in function _pq_fetch
pqpath.obj : error LNK2019: unresolved external symbol _PQoidValue referenced in function _pq_fetch
pqpath.obj : error LNK2019: unresolved external symbol _PQcmdTuples referenced in function _pq_fetch
pqpath.obj : error LNK2019: unresolved external symbol _PQcmdStatus referenced in function _pq_fetch
pqpath.obj : error LNK2019: unresolved external symbol _PQresStatus referenced in function _pq_fetch
utils.obj : error LNK2019: unresolved external symbol _PQescapeString referenced in function _psycopg_escape_string
utils.obj : error LNK2019: unresolved external symbol _PQescapeStringConn referenced in function _psycopg_escape_string
connection_int.obj : error LNK2019: unresolved external symbol _PQnotifies referenced in function _conn_notifies_process
connection_int.obj : error LNK2019: unresolved external symbol _PQparameterStatus referenced in function _conn_get_standard_conforming_strings
connection_type.obj : error LNK2001: unresolved external symbol _PQparameterStatus
connection_int.obj : error LNK2019: unresolved external symbol _PQprotocolVersion referenced in function _conn_get_protocol_version
connection_int.obj : error LNK2019: unresolved external symbol _PQserverVersion referenced in function _conn_get_server_version
connection_int.obj : error LNK2019: unresolved external symbol _PQgetCancel referenced in function _conn_setup_cancel
connection_int.obj : error LNK2019: unresolved external symbol _PQfreeCancel referenced in function _conn_setup_cancel
connection_type.obj : error LNK2001: unresolved external symbol _PQfreeCancel
connection_int.obj : error LNK2019: unresolved external symbol _PQsetNoticeProcessor referenced in function __conn_sync_connect
connection_int.obj : error LNK2019: unresolved external symbol _PQconnectStart referenced in function __conn_sync_connect
connection_int.obj : error LNK2019: unresolved external symbol _PQconnectdb referenced in function __conn_sync_connect
connection_int.obj : error LNK2019: unresolved external symbol _PQconnectPoll referenced in function __conn_poll_connecting
connection_int.obj : error LNK2019: unresolved external symbol _PQfinish referenced in function _conn_close_locked
connection_type.obj : error LNK2019: unresolved external symbol _PQtransactionStatus referenced in function _psyco_conn_get_transaction_status
connection_type.obj : error LNK2019: unresolved external symbol _PQbackendPID referenced in function _psyco_conn_get_backend_pid
connection_type.obj : error LNK2019: unresolved external symbol _PQsocket referenced in function _psyco_conn_fileno
connection_type.obj : error LNK2019: unresolved external symbol _PQcancel referenced in function _psyco_conn_cancel
cursor_type.obj : error LNK2019: unresolved external symbol _PQgetlength referenced in function __psyco_curs_buildrow_fill
cursor_type.obj : error LNK2019: unresolved external symbol _PQgetisnull referenced in function __psyco_curs_buildrow_fill
lobject_int.obj : error LNK2019: unresolved external symbol _lo_open referenced in function _lobject_open
lobject_int.obj : error LNK2019: unresolved external symbol _lo_creat referenced in function _lobject_open
lobject_int.obj : error LNK2019: unresolved external symbol _lo_create referenced in function _lobject_open
lobject_int.obj : error LNK2019: unresolved external symbol _lo_import referenced in function _lobject_open
lobject_int.obj : error LNK2019: unresolved external symbol _lo_close referenced in function _lobject_close_locked
lobject_int.obj : error LNK2019: unresolved external symbol _lo_unlink referenced in function _lobject_unlink
lobject_int.obj : error LNK2019: unresolved external symbol _lo_write referenced in function _lobject_write
lobject_int.obj : error LNK2019: unresolved external symbol _lo_read referenced in function _lobject_read
lobject_int.obj : error LNK2019: unresolved external symbol _lo_lseek referenced in function _lobject_seek
lobject_int.obj : error LNK2019: unresolved external symbol _lo_tell referenced in function _lobject_tell
lobject_int.obj : error LNK2019: unresolved external symbol _lo_export referenced in function _lobject_export
lobject_int.obj : error LNK2019: unresolved external symbol _lo_truncate referenced in function _lobject_truncate
adapter_binary.obj : error LNK2019: unresolved external symbol _PQescapeBytea referenced in function _binary_escape
adapter_binary.obj : error LNK2019: unresolved external symbol _PQescapeByteaConn referenced in function _binary_escape
build\lib.win32-3.4\psycopg2\_psycopg.pyd : fatal error LNK1120: 62 unresolved externals
error: command '"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\link.exe"' failed with exit status 1120
I tried to add the 'lib' and 'include' directories of postregsql install path into my path. Indeed, missing symbols seem to all be defined there (libpq.obj/c/h) ! Started a new 'cmd', but same result.
WE ended up using the binaries from here via pip -> https://github.com/nwcell/psycopg2-windows via python 3.4
pip install git+https://github.com/nwcell/psycopg2-windows.git#win64-py34#egg=psycopg2
as mentioned in this thread, http://www.lfd.uci.edu/~gohlke/pythonlibs/#psycopg is a good resource too, but the first solution solved my issue.
I could not find any binaries for psycopg2 for windows 64 bit and python 3.4. I suggest you downgrade to python 3.3 and use the correct binaries found at the address below.
If you are using a virtualenv you will need to activate it and use easy_install to install the binaries.
This way : easy_install http://www.stickpeople.com/projects/python/win-psycopg/2.5.2/psycopg2-2.5.2.win-amd64-py3.3-pg9.2.6-release.exe
EDIT : You can try these for 3.4 64bit http://www.lfd.uci.edu/~gohlke/pythonlibs/
Solved the same problem here. I got to download the binaries from the Christoph Gohlke's Unofficial Windows binaries (http://www.lfd.uci.edu/~gohlke/pythonlibs/#psychopy) and install using wheel.
Note that even if you are running on a 64 bit computer, you may want to try using the win32 version if the win_amd64 doesn't work.
To install the downloaded *.whl using wheel (as solved here: https://stackoverflow.com/a/27909082/4650346) you just do
pip install wheel
And then:
pip install psycopg2‑2.5.5‑cp34‑none‑win32.whl
And it works perfectly well on virtualenv also.

c++ mex file in matlab

I am trying to call a c++ function from matlab using a mex file.
While compiling any example mex programs given in the <root>\extern\examples\mex folder I get the same error:
Creating library C:\USERS\SONY\APPDATA\LOCAL\TEMP\MEX_AA~1\templib.x and object C:\USERS\SONY\APPDATA\LOCAL\TEMP\MEX_AA~1\templib.exp
arrayProduct.obj : error LNK2001: unresolved external symbol _fltused
LINK : error LNK2001: unresolved external symbol _DllMainCRTStartup
arrayProduct.mexw64 : fatal error LNK1120: 2 unresolved externals
I am using matlab 7.8(2009a) and compiler microsoft visual studio express 2008.
Can someone please help me?
Thanks.

convert first.obj to first.exe

please I would like you to answer me about that error when I compiled my C program(VC++ 2008) Thank you very, I would appreciate any help ..
Note :my program is to perform cosimulation between OPNET modeler 14.5 and MATLAB by using external cosimulation controller C program ....
this is output error in VC++ 2008 command prompt
`first.c
Microsoft (R) Incremental Linker Version 9.00.30729.01
Copyright (C) Microsoft Corporation. All rights reserved.
/out:first.exe
first.obj
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Interface_Value_Set
$referenced in function _main
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Interface_Value
$_Get referenced in function _main
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Execute_Until r
$eferenced in function _main
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Interface_Callb
$ack_Register referenced in function _main
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Interface_Group
$_Get referenced in function _main
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Load referenced
$ in function _main
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Init referenced
$ in function _main
$first.obj : error LNK2019: unresolved external symbol _imp_Esa_Main referenced
$ in function _main
$first.exe : fatal error LNK1120: 8 unresolved externals`
I guess you'd better use command-line tools(such as makesim) provided by OPNET rather than Visual Studio. Since your cosim depends on OPNET headers and libraries, it is better to compile and link with OPNET toolchain.

Link error when calling RUNTIME_CLASS on new class

I have a Visual Studio 2010 project done on MFC. I receive these errors:
2>COrderContentsItemsDocument.obj : error LNK2028: unresolved token (0A0001CA) "public: static struct CRuntimeClass * __stdcall COrderContentsItem::GetThisClass(void)" (?GetThisClass#COrderContentsItem##$$FSGPAUCRuntimeClass##XZ) referenced in function "public: virtual struct CRuntimeClass * __thiscall COrderContentsItemsDocument::GetItemsRuntimeClass(void)" (?GetItemsRuntimeClass#COrderContentsItemsDocument##$$FUAEPAUCRuntimeClass##XZ)
2>COrderContentsItemsDocument.obj : error LNK2019: unresolved external symbol "public: static struct CRuntimeClass * __stdcall COrderContentsItem::GetThisClass(void)" (?GetThisClass#COrderContentsItem##$$FSGPAUCRuntimeClass##XZ) referenced in function "public: virtual struct CRuntimeClass * __thiscall COrderContentsItemsDocument::GetItemsRuntimeClass(void)" (?GetItemsRuntimeClass#COrderContentsItemsDocument##$$FUAEPAUCRuntimeClass##XZ)
2>..\..\Output\Win32\Debug_Unicode\MindSalesManager.exe : fatal error LNK1120: 2 unresolved externals
After some research, I disocovered,that the problem comes when I call
RUNTIME_CLASS(COrderContentsItem)
So, this class is a new one that I copied from another already existing. So I am wondering to discover what is the problem.
Cheers,
Sérgio
The solution is to change the COrderContentsItem.cpp file properties. On solution Explorer, right-click the file, Choose Properties, and in Configration Properties > General change the Item type from "C/C++ header" to "C/C++ compiler".
May be I did something wrong when creating the file, e. g. choosing .h file instead of .cpp file.