Experimental Physics and Industrial Control System
Dirk,
I'll add that to the asyn known problems. Does VS 10 have the same problem with the header file as VS Express 2008 that Anthony Owen discovered?
Mark
________________________________
From: Dirk Zimoch [mailto:[email protected]]
Sent: Tue 11/16/2010 4:00 AM
To: Eric Norum
Cc: EPICS Techtalk; Mark Rivers
Subject: Re: asyn driver on Windows XP
Compiling asyn with make USR_CFLAGS=/D_WIN32_WINNT=0x0500 solves the
problem. I have no idea why _WIN32_WINNT is set to something >= 0x0600
(=Vista).
Dirk
Eric Norum wrote:
> The conditionals in drvAsynIPPort.c were supposed to handle this case:
>
> #if defined(__rtems__)
> # define USE_SOCKTIMEOUT
> #else
> # define USE_POLL
> # if defined(vxWorks)
> # define FAKE_POLL
> # elif defined(_WIN32)
> # if defined(POLLIN)
> # define poll(fd,nfd,t) WSAPoll(fd,nfd,t)
> # else
> # define FAKE_POLL
> # endif
> # else
> # include <sys/poll.h>
> # endif
> #endif
>
> The intent was to use WSAPoll() only on versions of windows which provided it (and defined POLLIN). Could it be that XP defines POLLIN but doesn't provide WSAPoll()?
> What happens if you compile this with -UPOLLIN added to the CFLAGS? If that doesn't help, try adding a '#undef POLLIN' just before the block of conditionals. If t either of those fix the problem we'll have to figure out some other set of conditionals for Windows.
>
>
> On Nov 15, 2010, at 8:57 AM, Dirk Zimoch wrote:
>
>> Hi all,
>>
>> I have a problem with the latest version of asyn driver on Windows XP. It tries to use a function WSAPoll() that does not exist in XP, only in Vista and newer. However I do not want use an old version of asyn driver without that function because of all the new features and bugfixes.
>>
>> The code in question is:
>>
>> #if defined(__rtems__)
>> # define USE_SOCKTIMEOUT
>> #else
>> # define USE_POLL
>> # if defined(vxWorks)
>> # define FAKE_POLL
>> # elif defined(_WIN32)
>> # if defined(POLLIN)
>> # define poll(fd,nfd,t) WSAPoll(fd,nfd,t)
>> # else
>> # define FAKE_POLL
>> # endif
>> # else
>> # include <sys/poll.h>
>> # endif
>> #endif
>>
>> It seems I have POLLIN defined but no WSAPoll.
>>
>> I am using the compiler from Visual Studio 10.
>>
>> Any idea?
>>
>> Dirk
>
- References:
- asyn driver on Windows XP Dirk Zimoch
- Re: asyn driver on Windows XP Eric Norum
- Re: asyn driver on Windows XP Dirk Zimoch
- Navigate by Date:
- Prev:
RE: EPICS base on Windows with INSTALL_LOCATION on a different drive Mark Rivers
- Next:
RE: the hex instruction convert 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
2025
- Navigate by Thread:
- Prev:
Re: asyn driver on Windows XP Dirk Zimoch
- Next:
Stand-alone sequencer programs Ben Franksen
- 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
2025