Ron,
I build statically on Windows, rather than dynamically, so that I get a
single .exe file that can be run on other PCs without a build
environment and a zillion DLLs. In that configuration I have no trouble
linking motor.dll.
I am puzzled as to how you can run "nm" on a Windows .lib file. When I
try to do that under Cygwin I get the following:
$ nm -A dbIoc.lib | grep pdbbase
nm: templateInstances.obj: File format not recognized
nm: dbContextReadNotifyCache.obj: File format not recognized
nm: dbPutNotifyBlocker.obj: File format not recognized
nm: dbSubscriptionIO.obj: File format not recognized
nm: dbChannelIO.obj: File format not recognized
nm: dbContext.obj: File format not recognized
nm: cvtBpt.obj: File format not recognized
nm: initHooks.obj: File format not recognized
nm: dbCaTest.obj: File format not recognized
nm: dbCa.obj: File format not recognized
nm: callback.obj: File format not recognized
nm: recGbl.obj: File format not recognized
nm: db_test.obj: File format not recognized
nm: db_access.obj: File format not recognized
nm: dbTest.obj: File format not recognized
nm: dbEvent.obj: File format not recognized
nm: dbScan.obj: File format not recognized
nm: dbNotify.obj: File format not recognized
nm: dbFastLinkConv.obj: File format not recognized
nm: dbConvert.obj: File format not recognized
nm: dbBkpt.obj: File format not recognized
nm: dbAccess.obj: File format not recognized
nm: dbLock.obj: File format not recognized
which is what I think I would expect. Can nm really parse a Windows
object file?
I have used VC 7.1 and 8.0 on EPICS 3.14.8.2. I have not used the older
6.0 and 7.0. I seem to recall that one needs at least Visual Studio
.NET 2003 (VC 7.1) to compile base now?
Mark
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Ron Sluiter
Sent: Monday, June 23, 2008 4:34 PM
To: EPICS
Subject: Visual C++ link errors
Anybody got a clue as to why this doesn't link.
Specs: Visual Studio 6.0 and 7.0, base-3.14.8.2, motorR6-2-2
link /nologo /subsystem:windows /dll /incremental:no /opt:ref /release
/implib:motor.lib /out:motor.dll motorRecord.obj motordevCom.obj
motordrvCom.obj paramLib.obj motorUtil.obj motorUtilAux.obj
c:/epics/base-3.14.8.2/lib/win32-x86/recIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/softDevIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/iocsh.lib
c:/epics/base-3.14.8.2/lib/win32-x86/miscIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/rsrvIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/dbtoolsIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/asIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/dbIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/registryIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/dbStaticIoc.lib
c:/epics/base-3.14.8.2/lib/win32-x86/ca.lib
c:/epics/base-3.14.8.2/lib/win32-x86/Com.lib
Creating library motor.lib and object motor.exp
motorUtilAux.obj : error LNK2019: unresolved external symbol _pdbbase
referenced in function "char * * __cdecl getMotorList(void)"
(?getMotorList@@YAPAPADXZ)
Apparently, pdbbase is not in dbIoc; "nm -A dbIoc.lib | grep pdbbase"
yields no results.
Thanks in advance,
Ron
- Replies:
- RE: Visual C++ link errors Mark Rivers
- References:
- Visual C++ link errors Ron Sluiter
- Navigate by Date:
- Prev:
Visual C++ link errors Ron Sluiter
- Next:
RE: Visual C++ link errors Mark Rivers
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Visual C++ link errors Ron Sluiter
- Next:
RE: Visual C++ link errors Mark Rivers
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|