Hi Lorna,
On Monday 09 May 2011 22:38:51 [email protected] wrote:
>
> What is a munch file? Why doesn't my bin\vxWorks-ppc603 folder include a
> vxTestHarness.munch file?
If you built EPICS Base properly, that file should be present for all vxWorks
architectures, e.g:
tux% cd base-3.14.12.1/bin/vxWorks-ppc32
tux% ls -l *.munch
-r-xr-xr-x 1 anj aesctl 1416603 Apr 26 15:43 callbackTest.munch*
-r-xr-xr-x 1 anj aesctl 1864447 May 10 10:47 softIoc.munch*
-r-xr-xr-x 1 anj aesctl 613149 May 10 10:33 vxTestHarness.munch*
> What is and how to link all the vxWorks binaries into a single .munch
> file??
A .munch file is a binary executable for vxWorks. It's created by linking
together all your object files and libraries into a single file, generating
and compiling a C source file that combines all of the C++ static constructors
and destructors present, and then linking that object file into the executable
as well. The name "munch" comes from the Wind River tool used to create the
static constructor/destructor list file, although EPICS Base uses its own
version of that tool written in Perl.
Here's the vxTestHarness.munch file being created inside base/src/libCom/test:
/usr/local/vw/vxWorks-6.8/gnu/4.1.2-vxworks-6.8/x86-linux2/bin/ldppc -r -o
vxTestHarness -L../../../../lib/vxWorks-ppc32/ -
L/usr/local/vw/vxWorks-6.8/gnu/4.1.2-vxworks-6.8/x86-linux2/powerpc-wrs-
vxworks/lib ../../../../bin/vxWorks-ppc32/vxComLibrary.o epicsCalcTest.o
epicsAlgorithmTest.o epicsMathTest.o epicsEllTest.o epicsErrlogTest.o
epicsStdioTest.o epicsStringTest.o epicsTimeTest.o epicsThreadTest.o
epicsThreadOnceTest.o epicsThreadPriorityTest.o epicsThreadPrivateTest.o
epicsExitTest.o epicsTimerTest.o ringPointerTest.o ringBytesTest.o
epicsEventTest.o epicsMutexTest.o epicsExceptionTest.o macEnvExpandTest.o
macLibTest.o taskwdTest.o blockingSockTest.o epicsMessageQueueTest.o
epicsRunLibComTests.o epicsThreadPerform.o epicsMaxThreads.o buckTest.o
cvtFastPerform.o -lCom
/usr/local/vw/vxWorks-6.8/utilities-1.0/x86-linux2/bin/nmppc vxTestHarness >
vxTestHarness.nm
perl ../../../../bin/linux-x86_64/munch.pl -o vxTestHarness_ctdt.c
vxTestHarness.nm
/usr/local/vw/vxWorks-6.8/gnu/4.1.2-vxworks-6.8/x86-linux2/bin/ccppc -c
-DCPU=PPC32 -DvxWorks -include
/usr/local/vw/vxWorks-6.8/vxworks-6.8/target/h/vxWorks.h -O2 -Wall -mstrict-
align -mlongcall -fno-builtin -MMD -fdollars-in-identifiers -I. -I../O.Common
-I. -I.. -I../../../../include/os/vxWorks -I../../../../include -
I/usr/local/vw/vxWorks-6.8/vxworks-6.8/target/h -
I/usr/local/vw/vxWorks-6.8/vxworks-6.8/target/h/wrn/coreip
vxTestHarness_ctdt.c
/usr/local/vw/vxWorks-6.8/gnu/4.1.2-vxworks-6.8/x86-linux2/bin/ldppc -r -T
/usr/local/vw/vxWorks-6.8/vxworks-6.8/target/h/tool/gnu/ldscripts/link.OUT -o
vxTestHarness.munch vxTestHarness_ctdt.o vxTestHarness
Installing created file ../../../../bin/vxWorks-ppc32/vxTestHarness.munch
Are you using the EPICS build system? The above steps are all automatic when
you ask it to create a vxWorks executable. If you're using Wind River
Workbench the equivalent seems to be a "Downloadable Kernel Module" project,
but I've never tried using Workbench to create EPICS applications.
- Andrew
--
An error is only a mistake if you don't learn from it.
When you learn something from it, it becomes a lesson.
- Replies:
- Re: Does EPICS Base support multi-thread on vxWorks 6.3? lorna . zhang
- References:
- Does EPICS Base support multi-thread on vxWorks 6.3? lorna . zhang
- Re: Does EPICS Base support multi-thread on vxWorks 6.3? Andrew Johnson
- Re: Does EPICS Base support multi-thread on vxWorks 6.3? lorna . zhang
- Navigate by Date:
- Prev:
RE: Announce: seq-2.0.13 Mark Rivers
- Next:
Re: Announce: seq-2.0.13 Benjamin 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
- Navigate by Thread:
- Prev:
Re: Does EPICS Base support multi-thread on vxWorks 6.3? lorna . zhang
- Next:
Re: Does EPICS Base support multi-thread on vxWorks 6.3? lorna . zhang
- 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
|