>You mean remove it from uCOS_ii.h or remove it from the whole project?
I said that the "simplest fix is to remove os_core.c from the project", so I was suggesting the second.
Maybe the first one would work just as well.
Anyway the problem is that the source code inside of os_core.c is compiled multiple times, once as its own source file by listing os_core as file in the project and at least once as being included in uCOS_ii.h.
The result is the link error L1818, so you have to adapt the project so that it only compiles this file (and probably any other *.c file) just once.
It's not common practice to include *.c files into other *.c files, but it is legal and should work as long as you do not compile the included c source file as well (not compiling it is done by not adding it to the CW project....).
> OS_CORE.C is an important and necessary part in RTOS uc/os-ii.
You need to compile it once, that's often enough even for important files :smileywink:.
>Never the less, the files listed below os_core.c had the same problem as above.
> It would impossible for me to remove all of them.
Same story for all c files.
I don't know this os, but to me it looks like you either should compile uCOS_II.C or compile all the source file this one includes, but not both. Check the documentation, or if it ships with sample projects check what is compiled in those.
Daniel