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.

TM4C1294NCPDT: Bootloader compilation issue

Part Number: TM4C1294NCPDT
Other Parts Discussed in Thread: EK-TM4C1294XL

I am trying to build the boot-emac-flash project in CCS. I am getting error in htons() in bl_emac.h as in attached image.

Similarly, if I build boot_serial project in CCS. "error #395: pointer to incomplete class type is not allowed" occurred for htons() in bl_emac.h. I couldn't build any of the bootloader code. Kindly help me to resolve this issue.

  • Hi,

      Did it work in the past? Did you import the boot_emac_flash project into CCS? Did you change the stock example in any way? The example is supposed to work, at a minimum compile without issues out of the box. 

    I will suggest you do the following.

    - Create a new CCS workspace. I don't know what happened in the past. Perhaps some CCS meta files was corrupted. Starting with a new CCS worksapce to rule that problem. 

    - Import boot_emac_flash into CCS. Note this is an import, not a directory or files copy. To import the project, you will need to select File -> Import. 

    - Select it is a CCS Projects. 

    - For Select search-directory, use the Browse button to select the project at C:\ti\TivaWare_C_Series-2.2.0.295\examples\boards\ek-tm4c1294xl\boot_emac_flash. The CCS will detect the project and you just import it. 

    - Once the project is imported, just build the project. It should build with no errors. 

  • Thanks for the solution.

    While trying to open CCS file, meta file issue was observed. So opened as project raised this issue.

    I tried to open in new workspace. and Build. Got error in bl_startup_ccs.s for "GPIOIntHandler" even UART_ENABLE_UPDATE and UART_AUTOBAUD are disabled (not sure for the reason for this). So commented those as ethernet is needed. Deleted "TARGET_IS_TM4C129_RA2" and added "TARGET_IS_TM4C129_RA0" and "TARGET_IS_TM4C129_RA1" in predefined symbol setting. Then I could compile the code.