Project

General

Profile

MSGQ access

Added by Mary Frantz over 11 years ago

Is there a way to use the MSGQ library? I would like to call MSGQ_locate() and MSGQ_close(). I have a project based on the HelloDSP example, but when debugging if I stop before the application ends, I get an error opening the message queues. I expect this is because the lpMessageOutbound and lpMessageInbound do not get deleted. The deconstructors for both of those classes close the msgqueue.

I would like to try calling MSGQ_locate() to see if the queue I intend to open already exists, then close it with MSQ_close(). However, I get a compiler error on the msgq.h include file.

In file included from /home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/dsplink.h:52:0,
from /home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:49,
from ../arm_main.cpp:18:
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/linkcfgdefs.h:824:37: error: 'MAX_DSPS' was not declared in this scope
In file included from ../arm_main.cpp:18:0:
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:158:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:197:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:235:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:268:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:311:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:353:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:389:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:425:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:455:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:485:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:524:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:557:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:589:1: error: 'DLLEXPORT' does not name a type
/home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h:620:1: error: 'DLLEXPORT' does not name a type
../arm_main.cpp: In function 'int main(int, char**)':

Can I use these functions?
Is /home/mitydsp/MDK_2012-08-10/sw/3rdparty/dsplink_linux_1_65_00_03/dsplink/gpp/inc/usr/msgq.h the right include?
Is there a way to locate and close msg queues from the shell command line?

Thanks,
Mary


Replies (2)

RE: MSGQ access - Added by Gregory Gluszek over 11 years ago

Hi Mary,

I think the reason you're getting a compiler error is because you're only including a single file from the DSPLink code. Take a look at the Makefile used to create the libdsp libraries (MDK/sw/ARM/linux/libdsp/Makefile) for an example of linking against DSPLink.

As far as being able to locate and close msg queues from the shell, I do not know of a way.

\Greg

RE: MSGQ access - Added by Mary Frantz over 11 years ago

The answer was in the Makefile. I had to add in all the defines.

DEFINES=-DTRACE_ENABLE \
-DOS_LINUX \
-DMAX_DSPS=1 \
-DMAX_PROCESSORS=2 \
-DID_GPP=1 \
-DPROC_COMPONENT \
-DPOOL_COMPONENT \
-DNOTIFY_COMPONENT \
-DMPCS_COMPONENT \
-DRINGIO_COMPONENT \
-DMPLIST_COMPONENT \
-DMSGQ_COMPONENT \
-DMSGQ_ZCPY_LINK \
-DCHNL_COMPONENT \
-DCHNL_ZCPY_LINK \
-DZCPY_LINK \
-DFILE_DEFAULT \
-DDA8XXGEM \
-DDA8XXGEM_PHYINTERFACE=SHMEM_INTERFACE \
-D_REENTRANT

I added in these as preprocessor defines in the project Properties wizard. It compiled an ran. The debugger is not able to resolve it though, so you can't step into it.
Thanks.
Thanks.

    (1-2/2)
    Go to top
    Add picture from clipboard (Maximum size: 1 GB)