Mark's answer about the needed change to base/src/libCom/osi/os/WIN32/osdTime.h is correct. As for the second problem, I had to move from VS 2015 Express to VS 2015 Community because the Express edition uses
a cross-compiler to create the 64 bit binaries while the Community version has a native 64bit compiler. This got me past the array size limit.
Hi all,
When I tried to compile EPICS base 3.15.2 on Windows 10 with MS Visual Studio Express 2015, I got the following error. I tried on VS Express 2010 (with Windows SDK), 2012 and 2013 for Windows 10 and all went through without any problem (for both win32-x86
and windows-x64). VS Express 2015 is the only one with trouble. The first error seems to be caused by ‘timespec’ redefined (see below). After I commented out the ‘timespec’ def in the code, there’s another array size exceeds limit error…
I was wondering if anybody else successfully compiled the code with VS Express 2015.
Thanks,
Paul
…
cl -EHsc -GR -nologo -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_C
RT_NONSTDC_NO_DEPRECATE -Ox -GL -Oy- -W3 -w44355 -MD -DEPICS_BUILD_DL
L -DEPICS_CALL_DLL -TP -I. -I../O.Common -I. -I../../../src/libCom/osi/compiler
/msvc -I../../../src/libCom/osi/compiler/default -I. -I../../../src/libCom/osi/o
s/WIN32 -I../../../src/libCom/osi/os/default -I.. -I../../../src/libCom/as -I../
../../src/libCom/bucketLib -I../../../src/libCom/calc -I../../../src/libCom/cvtF
ast -I../../../src/libCom/cppStd -I../../../src/libCom/cxxTemplates -I../../../s
rc/libCom/dbmf -I../../../src/libCom/ellLib -I../../../src/libCom/env -I../../..
/src/libCom/error -I../../../src/libCom/fdmgr -I../../../src/libCom/flex -I../..
/../src/libCom/freeList -I../../../src/libCom/gpHash -I../../../src/libCom/iocsh
-I../../../src/libCom/log -I../../../src/libCom/macLib -I../../../src/libCom/mi
sc -I../../../src/libCom/osi -I../../../src/libCom/pool -I../../../src/libCom/ri
ng -I../../../src/libCom/taskwd -I../../../src/libCom/timer -I../../../src/libCo
m/yacc -I../../../src/libCom/yacc -I../../../src/libCom/yajl -I../../../include/
compiler/msvc -I../../../include/os/WIN32 -I../../../include -c ../../..
/src/libCom/fdmgr/fdmgr.cpp
fdmgr.cpp
../../../src/libCom/osi/os/WIN32\osdTime.h(21): error C2011: 'timespec': 'struct
' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt\time.h(39): not
e: see declaration of 'timespec'
make[3]: *** [fdmgr.obj] Error 2
make[3]: Leaving directory `c:/epics/base-3.15.2/src/libCom/O.win32-x86'
make[2]: *** [install.win32-x86] Error 2
make[2]: Leaving directory `c:/epics/base-3.15.2/src/libCom'
make[1]: *** [libCom.install] Error 2
make[1]: Leaving directory `c:/epics/base-3.15.2/src'
make: *** [src.install] Error 2
make: Leaving directory `c:/epics/base-3.15.2'
Sent from Mail for Windows 10