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 | 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 |
<== Date ==> | <== Thread ==> |
---|
Subject: | RE: IOC make error |
From: | "Mark Rivers" <[email protected]> |
To: | "Cid, Florencio A" <[email protected]>, "Ron Sluiter" <[email protected]> |
Cc: | [email protected] |
Date: | Tue, 8 Nov 2011 12:27:17 -0600 |
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]] 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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: No, I think if base built OK then you can
proceed to building the IOC. From: Cid, Florencio A [mailto:[email protected]] 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: 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]] 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 From: 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]] 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 From: 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]] Mark, I’ve set the following in the
file, CONFIG_SITE, SHARED_LIBRARIES = NO STATIC_BUILD = YES Flo From: 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 From: [email protected]
[mailto:[email protected]] On
Behalf Of Ron Sluiter This tech-talk
entry may fix your problem. 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 |