Other Parts Discussed in Thread: SYSBIOS
Tool/software: TI-RTOS
Hello,
I'm trying to rebuild the IPC and the IPC examples from sources.
When I use the pre-built libraries and packages that are provided with:
ti-processor-sdk-rtos-am57xx-evm-04.01.00.06
ti-processor-sdk-linux-am57xx-evm-04.01.00.06
it works out of the box.
For the development environment I've built IPC from sources, following the instructions form here:
http://processors.wiki.ti.com/index.php/IPC_Install_Guide_Linux
(I also installed xdctools, cgt6000 and compiled sysbios)
This works well as long as I don't specify a CMEM_INSTALL_DIR. If I provided a CMEM_INSTALL_DIR (listed as optionally in the processor wiki page mentioned above) it fails:
/[..path..]/bin/arm-buildroot-linux-gnueabihf-gcc -DPACKAGE_NAME=\"TI\ IPC\" -DPACKAGE_TARNAME=\"ti-ipc\" -DPACKAGE_VERSION=\"3.0.0\" -DPACKAGE_STRING=\"TI\ IPC\ 3.0.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"ti-ipc\" -DVERSION=\"3.0.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DSTDC_HEADERS=1 -DHAVE_FCNTL_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I../../../hlos_common/include -D_GNU_SOURCE -Wall -pthread -I/[..path..]/share/ti-cmem/include -I[..path..]/build/linux-custom/include/generated/uapi -I../../../linux/include -I../../../packages -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -MT GateMPApp.o -MD -MP -MF .deps/GateMPApp.Tpo -c -o GateMPApp.o `test -f '../../../linux/src/tests/GateMPApp.c' || echo './'`../../../linux/src/tests/GateMPApp.c
make[2]: *** No rule to make target '/[..path..]/share/ti-cmem/src/cmem/api/.libs/libticmem.a', needed by 'GateMPApp'. Stop.
True, libticmem.a is not built by the cmem Makefile. (libticmem.la is built, not not the archived .a format).
Without CMEM_INSTALL_DIR GateMPApp.c is not built, so it doesn't fail.
If I just omit the CMEM_INSTALL_DIR I end up with an IPC installation, but compiling the ex02_messageq example fails with:
IpcMemory.loadSegment not found
Questions:
When should I specify the CMEM_INSTALL_DIR variable?
Is ex02_messageq compile error related to the missing CMEM_INSTALL_DIR reference?
What is the recommended workflow to create IPU and DSP binaries from sources?
Best regards,
Lo2