Subject: |
Re: Error LNK2005 building Diamond's nullhttpd module on Windows |
From: |
"J. Lewis Muir" <[email protected]> |
To: |
EPICS Tech-Talk <[email protected]> |
Date: |
Wed, 16 May 2018 17:09:46 -0500 |
On 05/16, J. Lewis Muir wrote:
> Now I'm getting the following error (the full output is at the end of
> this email):
>
> ===
> link -nologo -subsystem:windows -dll -LTCG -incremental:no -opt:ref -release /NODEFAULTLIB:LIBCMT.lib -implib:nullhttpd.lib -out:nullhttpd.dll cgi.obj files.obj http.obj win32.obj config.obj format.obj server.obj main.obj
> server.obj : error LNK2001: unresolved external symbol __imp__MessageBoxA@16
> ===
>
> Ideas?
It was noted in a private email that the <nullhttpd>/src/nullhttpd.h
header contains the following lines in a WIN32 ifdef which appear to add
a library-search record to the object file and define _MT to 1:
===
#pragma comment(lib, "libcmt.lib")
#pragma comment(lib, "wsock32.lib")
#define _MT 1
===
I tried reverting the "/NODEFAULTLIB:LIBCMT.lib" change and
commenting out the "libcmt.lib" pragma line and the _MT define
line, but still no dice; it's the same error I got after making the
"/NODEFAULTLIB:LIBCMT.lib" change (full output at the end of this
email):
===
link -nologo -subsystem:windows -dll -LTCG -incremental:no -opt:ref -release -implib:nullhttpd.lib -out:nullhttpd.dll cgi.obj files.obj http.obj win32.obj config.obj format.obj server.obj main.obj
server.obj : error LNK2001: unresolved external symbol __imp__MessageBoxA@16
===
I'm just trying to build this because the areaDetector ffmpegServer[1]
plug-in needs it. Does anyone use that plug-in on Windows?
Thanks!
Lewis
[1] https://github.com/areaDetector/ffmpegServer
===
C:\>call C:\opt\epics-base\startup\win32.bat
Setting environment for using Microsoft Visual Studio 2010 x86 tools.
C:\>cd C:\opt\epics-module\nullhttpd
C:\opt\epics-module\nullhttpd>gmake
gmake: Entering directory 'C:/opt/epics-module/nullhttpd'
gmake -C ./configure install
gmake[1]: Entering directory 'C:/opt/epics-module/nullhttpd/configure'
perl C:\opt\epics-base/bin/win32-x86/makeMakefile.pl O.win32-x86 ../..
perl -MExtUtils::Command -e mkpath O.Common
gmake -C O.win32-x86 -f ../Makefile TOP=../.. \
T_A=win32-x86 install
gmake[2]: Entering directory 'C:/opt/epics-module/nullhttpd/configure/O.win32-x86'
perl C:\opt\epics-base/bin/win32-x86/convertRelease.pl checkRelease
gmake[2]: Leaving directory 'C:/opt/epics-module/nullhttpd/configure/O.win32-x86'
gmake[1]: Leaving directory 'C:/opt/epics-module/nullhttpd/configure'
gmake -C ./src install
gmake[1]: Entering directory 'C:/opt/epics-module/nullhttpd/src'
perl C:\opt\epics-base/bin/win32-x86/makeMakefile.pl O.win32-x86 ../..
perl -MExtUtils::Command -e mkpath O.Common
gmake -C O.win32-x86 -f ../Makefile TOP=../.. \
T_A=win32-x86 install
gmake[2]: Entering directory 'C:/opt/epics-module/nullhttpd/src/O.win32-x86'
"Installing generic include file ../../include/nullhttpd.h"
mkdir ../../include
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\cgi.c
cgi.c
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\files.c
files.c
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\http.c
http.c
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\win32.c
win32.c
..\win32.c(141) : warning C4244: '=' : conversion from 'time_t' to 'long', possible loss of data
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\config.c
config.c
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\format.c
format.c
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\server.c
server.c
..\server.c(46) : warning C4133: 'function' : incompatible types - from 'long *' to 'const time_t *'
..\server.c(70) : warning C4133: 'function' : incompatible types - from 'long *' to 'const time_t *'
..\server.c(447) : warning C4244: '=' : conversion from 'time_t' to 'int', possible loss of data
cl -c -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -DWIN32 -MD -I. -I..\\O.Common -I. -I.. -I..\\..\\include\\os\\WIN32 -I..\\..\\include -IC:\opt\epics-base\\include\\os\\WIN32 -IC:\opt\epics-base\\include ..\\main.c
main.c
link -nologo -subsystem:windows -dll -LTCG -incremental:no -opt:ref -release -implib:nullhttpd.lib -out:nullhttpd.dll cgi.obj files.obj http.obj win32.obj config.obj format.obj server.obj main.obj
server.obj : error LNK2001: unresolved external symbol __imp__MessageBoxA@16
nullhttpd.dll : fatal error LNK1120: 1 unresolved externals
gmake[2]: *** [C:\opt\epics-base/configure/RULES_BUILD:306: nullhttpd.dll] Error 1120
gmake[2]: Leaving directory 'C:/opt/epics-module/nullhttpd/src/O.win32-x86'
gmake[1]: *** [C:\opt\epics-base/configure/RULES_ARCHS:61: install.win32-x86] Error 2
gmake[1]: Leaving directory 'C:/opt/epics-module/nullhttpd/src'
gmake: *** [C:\opt\epics-base/configure/RULES_DIRS:83: src.install] Error 2
gmake: Leaving directory 'C:/opt/epics-module/nullhttpd'
===
- Replies:
- Re: Error LNK2005 building Diamond's nullhttpd module on Windows J. Lewis Muir
- References:
- Error LNK2005 building Diamond's nullhttpd module on Windows J. Lewis Muir
- Re: Error LNK2005 building Diamond's nullhttpd module on Windows J. Lewis Muir
- Navigate by Date:
- Prev:
QEgui strip chart question marc . lormand
- Next:
Re: Error LNK2005 building Diamond's nullhttpd module on Windows J. Lewis Muir
- 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:
Re: Error LNK2005 building Diamond's nullhttpd module on Windows [email protected]
- Next:
Re: Error LNK2005 building Diamond's nullhttpd module on Windows J. Lewis Muir
- 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
|