這陣子我又開始測試板子,所以先把該更新的MHC及Harmony組件都更到最新,我先確認原本的code可以compile後,進MHC,新增了一個SERCOM,然後再compile,就出現類似下面的錯誤訊息:(新增SERCOM出現的不是這個訊息,這是後來再發生時複製的)
make[2]: *** No rule to make target '.generated_files/280598a6ac0c21076a1975408e6cb4ac02f963a6.flag', needed by 'build/Combine/production/_ext/818654064/drv_usbfsv1.o'. Stop.
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
我反覆試了幾次,回MHC把SERCOM刪掉又可以正常compile,找了一陣子原因,後來發現把make file刪掉後再按build,就可以正常compile了
例,將下列的檔案刪除
D:\MicrochipProject\Demofirmware\Demo.X\nbproject\Makefile-Combine.mk
這個問題在新增完SERCOM後,繼續編輯程式時仍會發生,所以看到錯誤時,如果看到在自動產生的檔案出現錯誤訊息時,就得試試看刪make檔,讓人有點困擾…
下次有看到錯誤時我再複製一下這個檔,然後跟刪除後再產生的比對看看…
.mk檔應該是每次build時會重新產生?