This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
We are using mcsdk 2.1.2.6 (IBL 1.0.0.16) with EVM6678 and we've made the following changes in order to properly clean/build the IBL:
1) ibl/src/make/c64x/makeeco.mk
* change "s/\\/\//g" to 's/\\/\//g' (use single quotation marks)
* remove "-o$$.$(ADEPEXT)" from GGAMAKEDEP definition as cl6x always use <source_file_name>.ppa as output file when generating dependencies
2) ibl/src/make/c64x/makedefs.mk
* MAKEDEP = $(AS)
* MAKEDEP_OPT = -q -apd $(CPUFLAGS)
* ADEPEXT = ppa
3) ibl/src/make/Makefile
* add find ../ -name *.ppa | xargs rm -f to the "clean" target
4) ibl/src/make/makestg2
* add $(RM) i2crom.ccs ibl_le.b ibl.b to the "spiRom" target actions (c.f. i2crom target)
* add rm -rf ibl_$(TARGET)/spiRom*.ccs to the "cleant" target actions
5) ibl/src/util/i2cConfig/makestg2
* add @rm -f $(CLEAN_INTERMEDIATES) to the "clean2" target actions
Windows-specific changes:
1) ibl\src\util\bconvert\makefile
* add rm -rf bconvert.exe bconvert64x.exe to the "clean" target actions
2) ibl\src\util\romparse\Makefile
* add rm -rf romparse.exe to the "clean" target actions
3) setupenvMsys.sh
* add PATH=/bin:$PATH so that "find" refers to msys's "find" and not Windows native "find.exe"
Hope it helps,
Dmitry
This solution came close, but didn't work for me, Dmitry.
Part of the remaining problem is that CPUFLAGS results in arguments that have nothing to do with cl6x. In particular, the -ele.oa argument that gets generated seems to spark a whole lot of confusion in the compiler trying to do a makedep. The "le" means "little endian", and I think that's irrelevant at that stage.
After trying various tactics to make this work, I hit on what I think is the correct one: in your MCSDK folder, throw the ibl directory for 2.1.2.6 out the window, and use the one from 2.1.2.5, which builds just fine.
Hope this helps,
Bill Z.