From: Mark Rivers
Sent: Wednesday, December 27, 2017 11:52 AM
To: EPICS core-talk
Subject: Problem building example application on windows-x64
I am having a problem building the example application from makeBaseApp in 7.0.1.1 on windows-x64.
I first ran the following on linux-x86_64:
/usr/local/epics-devel/base-7.0.1/bin/linux-x86_64/makeBaseApp.pl -t example test
/usr/local/epics-devel/base-7.0.1/bin/linux-x86_64/makeBaseApp.pl -i -t example test
I then built the IOC application and ran it fine on linux-x86_64.
I then edited example/configure/RELEASE to define EPICS_BASE for the location for windows-x64.
Running on a Windows machine with EPICS_HOST_ARCH=windows-x64 I did
make clean uninstall
That worked OK as follows:
J:\epics\devel\example>make clean uninstall
make -C ./configure clean
make[1]: Entering directory 'J:/epics/devel/example/configure'
perl -CSD -MExtUtils::Command -e rm_rf O.windows-x64 O.Common
make[1]: Leaving directory 'J:/epics/devel/example/configure'
make -C ./testApp clean
make[1]: Entering directory 'J:/epics/devel/example/testApp'
make -C ./src clean
make[2]: Entering directory 'J:/epics/devel/example/testApp/src'
perl -CSD -MExtUtils::Command -e rm_rf O.windows-x64 O.Common
make[2]: Leaving directory 'J:/epics/devel/example/testApp/src'
make -C ./Db clean
make[2]: Entering directory 'J:/epics/devel/example/testApp/Db'
perl -CSD -MExtUtils::Command -e rm_rf O.windows-x64 O.Common
make[2]: Leaving directory 'J:/epics/devel/example/testApp/Db'
make[1]: Leaving directory 'J:/epics/devel/example/testApp'
make -C ./iocBoot clean
make[1]: Entering directory 'J:/epics/devel/example/iocBoot'
make -C ./ioctest clean
make[2]: Entering directory 'J:/epics/devel/example/iocBoot/ioctest'
perl -CSD -MExtUtils::Command -e rm_f cdCommands envPaths dllPath.bat relPaths.sh
make[2]: Leaving directory 'J:/epics/devel/example/iocBoot/ioctest'
make[1]: Leaving directory 'J:/epics/devel/example/iocBoot'
perl -CSD -MExtUtils::Command -e rm_rf ./bin/windows-x64
perl -CSD -MExtUtils::Command -e rm_rf ./lib/windows-x64
perl -CSD -MExtUtils::Command -e rm_rf ./dbd ./include ./doc ./html ./templates ./db ./adl ./alh ./cfg ./edl ./lib/perl ./lib/pkgconfig
However, there is a problem when I then run make as follows:
J:\epics\devel\example>make
make -C ./configure install
make[1]: Entering directory 'J:/epics/devel/example/configure'
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/makeMakefile.pl O.windows-x64 ../..
perl -CSD -MExtUtils::Command -e mkpath O.Common
make -C O.windows-x64 -f ../Makefile TOP=../.. \
T_A=windows-x64 install
make[2]: Entering directory 'J:/epics/devel/example/configure/O.windows-x64'
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/convertRelease.pl checkRelease
make[2]: Leaving directory 'J:/epics/devel/example/configure/O.windows-x64'
make[1]: Leaving directory 'J:/epics/devel/example/configure'
make -C ./testApp install
make[1]: Entering directory 'J:/epics/devel/example/testApp'
make -C ./src install
make[2]: Entering directory 'J:/epics/devel/example/testApp/src'
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/makeMakefile.pl O.windows-x64 ../../..
perl -CSD -MExtUtils::Command -e mkpath O.Common
make -C O.windows-x64 -f ../Makefile TOP=../../.. \
T_A=windows-x64 install
make[3]: Entering directory 'J:/epics/devel/example/testApp/src/O.windows-x64'
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/dbdToRecordtypeH.pl -I. -I.. -I../O.Common -I../../../dbd -IH:/epics-devel/base-7.0.1/dbd -o xxxRecord.h ../xxxRecord.dbd
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m initTrace.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../../../i
nclude -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include initTrace.obj ../initTrace.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m testHello.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../../../i
nclude -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include testHello.obj ../testHello.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Creating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:26"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestV
ersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m dbSubExample.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../../.
./include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include dbSubExample.obj ../dbSubExample
.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devXxxSoft.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../../../
include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devXxxSoft.obj ../devXxxSoft.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m xxxRecord.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../../../i
nclude -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include xxxRecord.obj ../xxxRecord.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m testMain.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../../../in
clude -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include testMain.obj ../testMain.cpp
"Creating dbd file test.dbd"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/dbdExpand.pl -I. -I.. -I../O.Common -I../../../dbd -IH:/epics-devel/base-7.0.1/dbd -o test.dbd base.dbd xxxSupport.dbd dbSubExample.dbd devtestVersion.dbd
testHello.dbd initTrace.dbd PVAServerRegister.dbd qsrv.dbd
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/registerRecordDeviceDriver.pl -I. -I.. -I../O.Common -I../../../dbd -IH:/epics-devel/base-7.0.1/dbd -o test_registerRecordDeviceDriver.cpp
../O.Common/test.dbd test_registerRecordDeviceDriver J:/epics/devel/example
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m test_registerRecordDeviceDriver.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include
/os/WIN32 -I../../../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include test_registerRecordDeviceDriver.obj
test_registerRecordDeviceDriver.cpp
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:33"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:34"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:35"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:37"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:38"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:40"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:41"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/genVersionHeader.pl -t ../../.. -N testVERSION -V "" ../O.Common/testVersion.h
Updating VCS header ../O.Common/testVersion.h
testVERSION = "2017-12-27T11:39:42"
perl -CSD H:/epics-devel/base-7.0.1/bin/windows-x64/mkmf.pl -m devtestVersion.d -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/msvc -I../../../include/os/WIN32 -I../..
/../include -IH:/epics-devel/base-7.0.1/include/compiler/msvc -IH:/epics-devel/base-7.0.1/include/os/WIN32 -IH:/epics-devel/base-7.0.1/include devtestVersion.obj ../devtestVersion.c
As you can see above it gets into an infinite loop with testVersion.c.
Am I doing something wrong?
Thanks,
Mark