Experimental Physics and Industrial Control System
Sorry, I sent the last message before I did the final paste.
Tim,
You should not need to do this. You can use standard Windows file
paths, i.e. D:/EPICS/base-3.14.10. You do, however, need a version of
gnu make for Windows which is not the latest version from Cygwin. The
latest version on Cygwin does not work with the latest EPICS releases.
I can get you that version of make. Unfortunately one cannot tell which
version one is running with "make -v", both the good and bad versions
report 3.81.
Here is a listing of the 2 versions on my Cygwin system:
$ ls -l make*
-rwx------+ 1 epics None 495190 May 23 2008 make.exe
-rwxr-x---+ 1 epics Users 151552 Feb 9 2008 make.exe.old
The one called .old does not work. Here is the version of make reported
for each one:
$ ./make -v
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for i686-pc-cygwin
rivers@Rivers-Mobile /bin
$ ./make.exe.old -v
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for i686-pc-cygwin
rivers@Rivers-Mobile /bin
$
Mark
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Timothy Madden
Sent: Monday, January 12, 2009 12:35 PM
To: [email protected]
Subject: AreaDetector, Compiling synApps modules for Windows Microsoft
compiler
Folks
I am making a soft IOC to run Mark River's area detector module (AD). AD
requires several synApps modules to run. I have built EPICS 3-14-10
successfully with the MS Windows compiler (.NET 2003). I ran into a
problem with the make utility when compiling the synApps modules.
For example, to compile gensub using the windows compiler I have to set
EPICS_BASE in the RELEASE file to something. I can use a DOS style path
or a UNIX style path. If I set EPICS_BASE to D:/EPICS/base-3.14.10, the
make system gives an error:
...RULES_TARGET:90 *** target pattern contains no '%'
This is due to the ':' in the DOS path. IN unix make land, the : is used
to concatenate variables and is not recognized as part of a path.
If I set EPICS_BASE to a UNIX path, say,
EPICS_BASE=/cygdrive/d/epics/base I get another error.
The problem here is that make is attempting to pass UNIX paths to the
Microsoft compiler, cl. cl does not understand
UNIX paths as arguments.
I found a way to compile that seems to work OK.
This is in the top make file, say in gensub/1-6a.
TOP=/.
Put this in the top of the configure/RELEASE file:
EPICS_BASE=$(TOP)/../../../../base-3.14.10
Now we only use relative paths. IN this way we never have to use a : in
the pathname, and both DOS and gnu make can
understand the paths.
I propose we change the Makefile Rules to include calls to
shell cygpath ....
cygpath can convert UNIX paths to DOS and vice versa
IN this way we can use
if HOST_ARCH= win32-x86
to conditionally call cygpath within the make system to convert to the
proper paths.
This way we could would not even have to have a RELEASE.win32-x86 file.
The make system would automatically convert
the path names to DOS or UNIX depending on which type of path is
needed.
Tim Madden
- References:
- AreaDetector, Compiling synApps modules for Windows Microsoft compiler Timothy Madden
- RE: AreaDetector, Compiling synApps modules for Windows Microsoft compiler Mark Rivers
- Navigate by Date:
- Prev:
RE: AreaDetector, Compiling synApps modules for Windows Microsoft compiler Mark Rivers
- Next:
RE: USB streaming device to linux/epics 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:
RE: AreaDetector, Compiling synApps modules for Windows Microsoft compiler Mark Rivers
- Next:
Re: AreaDetector, Compiling synApps modules for Windows Microsoft compiler Andrew Johnson
- 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