This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: mqueue.inl
- From: Gustav Kälvesten <gustav dot kalvesten at axis dot com>
- To: "'Jonathan Larmour'" <jlarmour at redhat dot com>
- Cc: eCos <ecos-discuss at sources dot redhat dot com>
- Date: Fri, 14 Dec 2001 05:38:33 +0100
- Subject: RE: [ECOS] mqueue.inl
> I know that's what the other functions have, but that's
> because they are
> quite large, whereas count() is small. The
> CYGPRI_KERNEL_SYNCH_MQUEUE_INLINE macro is only present to
> prevent the test
> inlining too much code, resulting in a massive binary.
>
> > The current way gives me compilation errors for the kernel
> tests (mqueue1.cxx). Or maybe I'm missing something.
>
> I suspect there must be some other reason. What's the error?
gcc -c -I/home/gustavk/ecos/ecos_install/include -I/home/gustavk/ecos/cvs/ecos/packages/kernel/current -I/home/gustavk/ecos/cvs/ecos/packages/kernel/current/src -I/home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests -I. -I/home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests/ -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority -Wp,-MD,tests/mqueue1.tmp -o tests/mqueue1.o /home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests/mqueue1.cxx
gcc -g -nostdlib -Wl,--gc-sections -Wl,-static -L/home/gustavk/ecos/ecos_install/lib -Ttarget.ld -o /home/gustavk/ecos/ecos_install/tests/kernel/current/tests/mqueue1 tests/mqueue1.o
tests/mqueue1.o: In function `global destructors keyed to cyg_user_start':
/home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests/mqueue1.cxx:71: undefined reference to `Cyg_Mqueue::count(void)'
/home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests/mqueue1.cxx:71: undefined reference to `Cyg_Mqueue::count(void)'
/home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests/mqueue1.cxx:71: undefined reference to `Cyg_Mqueue::count(void)'
/home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests/mqueue1.cxx:71: undefined reference to `Cyg_Mqueue::count(void)'
/home/gustavk/ecos/cvs/ecos/packages/kernel/current/tests/mqueue1.cxx:71: undefined reference to `Cyg_Mqueue::count(void)'
collect2: ld returned 1 exit status
I get the same result with CYGIMP_KERNEL_SYNCH_MQUEUE_NOT_INLINE enabled or disabled.
- Gustav