OK, perhaps your problem is
just in the syntax you are using to define paths. It looks like you have
defined EPICS_BASE to be C:/EPICS/base. I would suggest instead defining it as
/cygdrive/c/EPICS/base. With that syntax then perhaps the standard Cygwin make
will work? You can either edit /cygdrive/c/mytop/configure/RELEASE or run
makeBaseApp again.
Mark
From: Cid, Florencio A [mailto:[email protected]]
Sent: Tuesday, November 08, 2011
12:18 PM
To: Mark
Rivers; Ron Sluiter
Cc: [email protected]
Subject: RE: IOC make error
Mark,
Using the make.exe received from you, I
was able to get successfully compile the example IOC, but encountered the
following (see below).
$ make clean
make -C
./configure clean
make[1]:
Entering directory `/cygdrive/c/mytop/configure'
rm -rf
O.cygwin-x86 O.Common
make[1]:
Leaving directory `/cygdrive/c/mytop/configure'
make -C
./myexampleApp clean
make[1]:
Entering directory `/cygdrive/c/mytop/myexampleApp'
make -C ./src
clean
make[2]:
Entering directory `/cygdrive/c/mytop/myexampleApp/src'
rm -rf
O.cygwin-x86 O.Common
make[2]:
Leaving directory `/cygdrive/c/mytop/myexampleApp/src'
make -C ./Db
clean
make[2]:
Entering directory `/cygdrive/c/mytop/myexampleApp/Db'
rm -rf
O.cygwin-x86 O.Common
make[2]:
Leaving directory `/cygdrive/c/mytop/myexampleApp/Db'
make[1]:
Leaving directory `/cygdrive/c/mytop/myexampleApp'
make -C
./iocBoot clean
make[1]:
Entering directory `/cygdrive/c/mytop/iocBoot'
make -C
./iocmyexample clean
make[2]:
Entering directory `/cygdrive/c/mytop/iocBoot/iocmyexample'
rm -f
cdCommands envPaths dllPath.bat
make[2]:
Leaving directory `/cygdrive/c/mytop/iocBoot/iocmyexample'
make[1]: Leaving
directory `/cygdrive/c/mytop/iocBoot'
ui495a@lt-fcid
/cygdrive/c/mytop
$ make
make -C
./configure install
make[1]:
Entering directory `/cygdrive/c/mytop/configure'
perl
c:/EPICS/base/bin/cygwin-x86/makeMakefile.pl O.cygwin-x86 ../..
mkdir O.Common
make -C
O.cygwin-x86 -f ../Makefile TOP=../.. T_A=cygwin-x86 install
make[2]:
Entering directory `/cygdrive/c/mytop/configure/O.cygwin-x86'
perl
c:/EPICS/base/bin/cygwin-x86/convertRelease.pl checkRelease
make[2]:
Leaving directory `/cygdrive/c/mytop/configure/O.cygwin-x86'
make[1]:
Leaving directory `/cygdrive/c/mytop/configure'
make -C
./myexampleApp install
make[1]:
Entering directory `/cygdrive/c/mytop/myexampleApp'
make -C ./src
install
make[2]:
Entering directory `/cygdrive/c/mytop/myexampleApp/src'
perl
c:/EPICS/base/bin/cygwin-x86/makeMakefile.pl O.cygwin-x86 ../../..
mkdir O.Common
make -C
O.cygwin-x86 -f ../Makefile TOP=../../.. T_A=cygwin-x86 install
make[3]:
Entering directory `/cygdrive/c/mytop/myexampleApp/src/O.cygwin-x86'
perl
c:/EPICS/base/bin/cygwin-x86/makeIncludeDbd.pl base.dbd xxxSupport.dbd dbSu
bExample.dbd
myexampleHello.dbd initTrace.dbd ../O.Common/myexampleInclude.dbd
Expanding dbd
Installing
created dbd file ../../../dbd/myexample.dbd
c:/EPICS/base/bin/cygwin-x86/dbToRecordtypeH.exe
-I . -I .. -I ../../../dbd -Ic
:/EPICS/base/dbd
../xxxRecord.dbd ../O.Common/xxxRecord.h
Installing
generated generic include file ../../../include/xxxRecord.h
gcc -c
-D_POSIX_THREADS
-D_POSIX_TIMERS
-DUNIX -DCYGWIN32 -O3
-Wall
-m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I.. -I../../../i
nclude/os/cygwin32
-I../../../include -Ic:/EPICS/base/include/os/cygwin32 -Ic:/E
PICS/base/include
../xxxRecord.c
gcc -c
-D_POSIX_THREADS
-D_POSIX_TIMERS
-DUNIX -DCYGWIN32 -O3
-Wall
-m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I.. -I../../../i
nclude/os/cygwin32
-I../../../include -Ic:/EPICS/base/include/os/cygwin32 -Ic:/E
PICS/base/include
../devXxxSoft.c
gcc -c
-D_POSIX_THREADS -D_POSIX_TIMERS
-DUNIX -DCYGWIN32 -O3
-Wall
-m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I.. -I../../../i
nclude/os/cygwin32
-I../../../include -Ic:/EPICS/base/include/os/cygwin32 -Ic:/E
PICS/base/include
../dbSubExample.c
gcc -c
-D_POSIX_THREADS
-D_POSIX_TIMERS
-DUNIX -DCYGWIN32 -O3
-Wall
-m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I.. -I../../../i
nclude/os/cygwin32
-I../../../include -Ic:/EPICS/base/include/os/cygwin32 -Ic:/E
PICS/base/include
../myexampleHello.c
gcc -c
-D_POSIX_THREADS
-D_POSIX_TIMERS
-DUNIX -DCYGWIN32 -O3
-Wall
-m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I.. -I../../../i
nclude/os/cygwin32
-I../../../include -Ic:/EPICS/base/include/os/cygwin32 -Ic:/E
PICS/base/include
../initTrace.c
ar
-rc myexampleSupport.lib
xxxRecord.o devXxxSoft.o dbSubExample.o mye
xampleHello.o
initTrace.o
ranlib
myexampleSupport.lib
Installing
library ../../../lib/cygwin-x86/myexampleSupport.lib
perl c:/EPICS/base/bin/cygwin-x86/registerRecordDeviceDriver.pl
../O.Common/myex
ample.dbd
myexample_registerRecordDeviceDriver c\:/mytop > myexample.tmp
mv
myexample.tmp myexample_registerRecordDeviceDriver.cpp
g++ -c
-D_POSIX_THREADS
-D_POSIX_TIMERS
-DUNIX -DCYGWIN32 -O3
-Wall
-m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I.. -I../../../i
nclude/os/cygwin32
-I../../../include -Ic:/EPICS/base/include/os/cygwin32 -Ic:/E
PICS/base/include
myexample_registerRecordDeviceDriver.cpp
g++ -c
-D_POSIX_THREADS
-D_POSIX_TIMERS
-DUNIX -DCYGWIN32 -O3
-Wall
-m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I.. -I../../../i
nclude/os/cygwin32
-I../../../include -Ic:/EPICS/base/include/os/cygwin32 -Ic:/E
PICS/base/include
../myexampleMain.cpp
g++ -o
myexample.exe -static -Lc\:/mytop/lib/cygwin-x86 -Lc\:/EPICS/base/lib/cyg
win-x86
-m32
myexample_registerRecordDeviceDriver.o myexampl
eMain.o
-lmyexampleSupport -lrecIoc -lsoftDevIoc -lmiscIoc -lrsrvIoc -ldbtool
sIoc -lasIoc
-ldbIoc -lregistryIoc -ldbStaticIoc -lca -lCom
-lpthread -lread
line -lcurses
-lm
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lmyexampleSupport
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lrecIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lsoftDevIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lmiscIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lrsrvIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-ldbtoolsIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lasIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-ldbIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lregistryIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-ldbStaticIoc
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lca
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld:
cannot find
-lCom
collect2: ld
returned 1 exit status
make[3]: ***
[myexample.exe] Error 1
make[3]:
Leaving directory `/cygdrive/c/mytop/myexampleApp/src/O.cygwin-x86'
make[2]: ***
[install.cygwin-x86] Error 2
make[2]:
Leaving directory `/cygdrive/c/mytop/myexampleApp/src'
make[1]: ***
[src.install] Error 2
make[1]: Leaving
directory `/cygdrive/c/mytop/myexampleApp'
make: ***
[myexampleApp.install] Error 2
Flo
From: Mark Rivers
[mailto:[email protected]]
Sent: Tuesday, November 08, 2011
10:37 AM
To: Cid, Florencio A; Ron Sluiter
Cc: [email protected]
Subject: RE: IOC make error
No, I think if base built OK then you can
proceed to building the IOC.
From: Cid, Florencio A [mailto:[email protected]]
Sent: Tuesday, November 08, 2011
11:34 AM
To: Mark
Rivers; Ron Sluiter
Cc: [email protected]
Subject: RE: IOC make error
Thanks, Mark. Will
do. Should I attempt to rebuild EPICS base with this new make.exe
prior to trying to compile/build the example IOC?
Flo
From: Mark Rivers
[mailto:[email protected]]
Sent: Tuesday, November 08, 2011
10:33 AM
To: Cid, Florencio A; Ron Sluiter
Cc: [email protected]
Subject: RE: IOC make error
http://cars.uchicago.edu/software/pub/make.gz
gunzip it, and rename it from make to
make.exe.
Mark
From: Cid, Florencio A [mailto:[email protected]]
Sent: Tuesday, November 08, 2011
11:28 AM
To: Mark
Rivers; Ron Sluiter
Cc: [email protected]
Subject: RE: IOC make error
Mark,
I tend to agree with you regarding
figuring out why the latest version of Cygwin make is not
working…..
In the meantime, I was wondering if you
could please have a copy of your make.gz. Thought that I would give
it a try.
Flo
Interestingly
I see the following:
$
uname -r
1.7.7(0.230/5/3)
$ ls -al
/bin/make*
-rwx------+
1 epics None 495190 2008-05-23 17:48
/bin/make.exe
-rwxr-x---+
1 epics Users 151552 2008-02-09 13:50 /bin/make.exe.old
-rw-r--r--
1 rivers mkpasswd 179495 2009-01-12 14:03 /bin/make.gz
So my
version of Cygwin is slightly older than yours, 1.7.7 vs 1.7.9. I have
the same version of make as you which I am NOT using, (it is renamed to
make.exe.old) and I am using another version that is about 3 times larger.
I honestly don’t remember where I got the version that I am using.
But the .gz file expands into the version of make.exe that I am using.
I can make that available if you want, but I think we need to figure out
why the latest version of Cygwin make is not working?
Mark
From: Cid, Florencio A [mailto:[email protected]]
Sent: Tuesday, November 08, 2011
10:26 AM
To: Mark
Rivers; Ron Sluiter
Cc: [email protected]
Subject: RE: IOC make error
Mark,
Cgwin version is as follows:
$ uname -r
1.7.9(0.237/5/3)
Info for /bin/make is as follows:
$ ls -al make
-rwxr-xr-x 1 ui495a root 151552 Feb 9 2008 make
Flo
Those are the same settings I am
using.
What version of Cygwin are you
using? What is the size and date of your /bin/make.exe?
Mark
From: Cid, Florencio A [mailto:[email protected]]
Sent: Tuesday, November 08, 2011
10:04 AM
To: Mark
Rivers; Ron Sluiter
Cc: [email protected]
Subject: RE: IOC make error
Mark,
I’ve set the following in the
file, CONFIG_SITE,
SHARED_LIBRARIES = NO
STATIC_BUILD = YES
Flo
I don’t think that tech-talk
message of mine applies any more. That was an attempt to use the Cygwin
version of make to build for win32-x86. That is not supported, and one
should use the GnuWin version of make to build for win32-x86.
As far as I know the current Cygwin
version of make should work OK to build for the cygwin-x86 architecture, and
there is no need to roll back to an earlier version.
Are you building statically or
dynamically?
Mark
This tech-talk
entry may fix your problem.
On 11/7/2011 4:42 PM, Cid, Florencio A wrote:
Hello all,
I’ve just installed EPICS base (3.14.12.1) on
Windows XP with Cygwin (EPICS_HOST_ARCH = cygwin-x86). To verify
the installation, I was attempting to building the Example IOC application (per
Section 2.2 of the Application Developer’s Guide).
Unfortunately, I am encountering the following errors
upon attempting to compile:
$ make
make -C ./configure
install
make[1]: Entering
directory `/cygdrive/c/mytop/configure'
make -C O.cygwin-x86 -f
../Makefile TOP=../.. T_A=cygwin-x86 install
make[2]: Entering
directory `/cygdrive/c/mytop/configure/O.cygwin-x86'
perl c:/EPICS/base/bin/cygwin-x86/convertRelease.pl
checkRelease
make[2]: Leaving
directory `/cygdrive/c/mytop/configure/O.cygwin-x86'
make[1]: Leaving
directory `/cygdrive/c/mytop/configure'
make -C ./myexampleApp
install
make[1]: Entering
directory `/cygdrive/c/mytop/myexampleApp'
make -C ./src install
make[2]: Entering
directory `/cygdrive/c/mytop/myexampleApp/src'
make -C O.cygwin-x86 -f
../Makefile TOP=../../.. T_A=cygwin-x86 install
make[3]: Entering
directory `/cygdrive/c/mytop/myexampleApp/src/O.cygwin-x86'
c:/EPICS/base/configure/RULES_TARGET:69:
*** multiple target patterns. Stop.
make[3]: Leaving
directory `/cygdrive/c/mytop/myexampleApp/src/O.cygwin-x86'
make[2]: ***
[install.cygwin-x86] Error 2
make[2]: Leaving directory
`/cygdrive/c/mytop/myexampleApp/src'
make[1]: ***
[src.install] Error 2
make[1]: Leaving
directory `/cygdrive/c/mytop/myexampleApp'
make: ***
[myexampleApp.install] Error 2
Not sure if this is an indication that I have a bad
EPICS base build and/or have something lacking in my environment, etc.
Any help/info/assistance will be greatly appreciated.
Thanks in advance,
Florencio
Cid