makefile ignoring flags set in oil.file
Posted: Wed Oct 17, 2018 3:07 pm
Hi,
I'm currently using a Tricore TC275 and ErikaOS on a project.
Needing shared variables, I used export files in the .oil file (according to http://erika.tuxfamily.org/wiki/index.p ... neon_Aurix) to access those variables on all cores:
excerpt of conf.oil file:
But when doing so, the makefile ignores all LDFLAGS set in the oil file. Therefore, even though the library itself is loaded, the lookup path to that lib isn't, resulting in errors during the build process. Without using the export files the programm obviously does not work either, but the LDFLAGS are handled properly.
My current suspicion is, that there might be something wrong with the cc_tricore_gnu_new.mk makefile, since that's the one handling the export files. But due to a lack of experience with makefiles, I wasn't able to track the problem even further.
I would really appreciate every help possible :)
regards
Alex
I'm currently using a Tricore TC275 and ErikaOS on a project.
Needing shared variables, I used export files in the .oil file (according to http://erika.tuxfamily.org/wiki/index.p ... neon_Aurix) to access those variables on all cores:
excerpt of conf.oil file:
Code: Select all
CPU test_application {
OS EE {
REMOTENOTIFICATION = USE_RPC;
CFLAGS ="-I../../../3rdParty/iLLD_Build/src";
CFLAGS ="-I../../../3rdParty/iLLD_1_0_1_3_0/Src/BaseSw/Infra/Sfr/TC27D/_Reg";
CFLAGS ="-I../../../3rdParty/iLLD_1_0_1_3_0/Src/BaseSw/Infra/Platform";
CFLAGS ="-I../../../3rdParty/iLLD_1_0_1_3_0/Src/BaseSw/Service/CpuGeneric";
CFLAGS ="-I../../../3rdParty/iLLD_1_0_1_3_0/Src/BaseSw/iLLD/TC27D/Tricore";
CFLAGS ="-I../../../.";
CFLAGS ="-I../../.";
CFLAGS ="-fdata-sections -ffunction-sections";
CFLAGS ="-O2";
LDFLAGS ="-Wl,--gc-sections";
LDFLAGS ="-L../../../3rdParty/iLLD_Build/lib";
LIBS ="-liLLD";
EE_OPT = "EE_EXECUTE_FROM_RAM";
EE_OPT = "EE_SAVE_TEMP_FILES";
EE_OPT = "EE_ICACHE_ENABLED";
EE_OPT = "EE_DCACHE_ENABLED";
EE_OPT = "EE_TRIBOARD_TC2X5";
//EE_OPT = "GPIO_SHIELDBUDDY";
EE_OPT = "GPIO_TRIBOARD_TC275C";
EE_OPT = "__TC27XX__";
EE_OPT = "IFX_TC27x";
EE_OPT = "ERIKA_OS";
//EE_OPT = EE_BUILD_SINGLE_ELF;
EE_OPT = VERBOSE;
MASTER_CPU = "C0";
CPU_DATA = TRICORE {
ID = "C0";
CPU_CLOCK = 200.0;
APP_SRC = "master.c ./app_core_0.c ./app_event_table_core_0.c ./app_ccu_table_core_0.c ./app_db_core_0.c ./IO/GPIO/gpio.c ../ILM/src/ilm_core.c ../ILM/os/ilm_os_erika.c ../ILM/hw/ilm_hw_aurix.c ./ILM/cfg/ilm_hooks.c ";
MULTI_STACK = TRUE;
SYS_STACK_SIZE = 256;
COMPILER_TYPE = GNU {
EXPORT_FILE = "c0.exp";
};
};
...
My current suspicion is, that there might be something wrong with the cc_tricore_gnu_new.mk makefile, since that's the one handling the export files. But due to a lack of experience with makefiles, I wasn't able to track the problem even further.
I would really appreciate every help possible :)
regards
Alex