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.

RTOS/TM4C1294NCPDT: FATFS with TI-RTOS unresolved symbols remain

Part Number: TM4C1294NCPDT

Tool/software: TI-RTOS

Hi,

I'm using FatFS module on my project. My target is tm4c1294ncpdt and using TI-RTOS. My TI-RTOS version is 2.16.00.08. My CCS is version 8.3.

I was implementing a routine to search for all files inside a folder and didn't manage to find something using the RTS library. So I went to FatFS API and they have "f_findfirst" and "f_findnext", which are great for my purpose.

When compiling I get an error "unresolved symbols remain", which I assumed was my fault. I imported the "fatsdraw" example for tm4c1294ncpdt and tried to use such functions and they throw the same error. 

Are those functions not implemented or do I need to make some special preparation to use those?

  • daniolip said:
    Are those functions not implemented or do I need to make some special preparation to use those?

    f_findfirst() and f_findnext() are not enabled out of the box.  You can enable them by editing the file
        tirtos_tivac_2_16_00_08/products/tidrivers_tivac_2_16_00_08/packages/ti/mw/fatfs/ffconf.h
    and changing the line
        #define _USE_FIND    0
    to
        #define _USE_FIND    1

    You need to then rebuild the fatfs library by issuing the command
        make -f tirtos.mak drivers
    from the top-level tirtos_tivac_2_16_00_08 installation directory.

    Rebuilding instructions are contained in the Users_guide.pdf in the docs subdirectory.  Chapter 8.1 documents rebuilding TI-RTOS.

    Regards,

    - Rob

  • First of all, thanks for the fast reply.

    Are there any downsides by enabling such functions? If not, why they were disabled in the first place? For smaller code size?

    Also another question, which program I should install to be able to run "gmake"? On the userguide that's not mentioned.

  • building tirtos drivers...
    gmake[1]: Entering directory `c:/ti/tirtos_tivac_2_16_00_08/products/tidrivers_tivac_2_16_00_08'
    building drivers packages ...
    making all: Thu Apr 18 13:28:25 2019 ...
    ======== .interfaces [./packages/ti/boards] ========
    ======== .interfaces [./packages/ti/drivers] ========
    ======== .interfaces [./packages/ti/mw] ========
    ======== .interfaces [./packages/ti/mw/fatfs] ========
    ======== .interfaces [./packages/ti/mw/wifi/cc3x00] ========
    ======== .interfaces [./packages/ti/drivers/ports] ========
    making package.mak (because of package.bld) ...
    making package.mak (because of package.bld) ...
    making package.mak (because of package.bld) ...
    making package.mak (because of package.bld) ...
    js: "C:/ti/tirtos_tivac_2_16_00_08/products/bios_6_45_01_29/packages/ti/targets/arm/elf/IArm.xs", line 77: Error: The compiler in c:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.5 is not compatible with this version of TI-RTOS or SYS/BIOS. Please use Arm compiler 5.2.2 or newer.
    js: "C:/ti/tirtos_tivac_2_16_00_08/products/bios_6_45_01_29/packages/ti/targets/arm/elf/IArm.xs", line 77: Error: The compiler ijs: "C:/ti/tirtos_tivac_2_16_00_08/products/bios_6_45_01_29/packages/ti/targets/arm/elf/IArm.xs", line 77: Error: The compiler in c:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.5 is not compatible with this version of TI-RTOS or SYS/BIOS. Please use Arm compiler 5.2.2 or newer.
    n c:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.5 is not compatible with this version of TI-RTOS or SYS/BIOS. Please use Arm compiler 5.2.2 or newer.
    gmake[1]: *** Deleting file `package.mak'
    gmake[1]: *** No rule to make target `package.mak', needed by `.interfaces'gmake[1]: .  Stop.
    *** Deleting file `package.mak'
    gmake[1]: gmake[1]: *** *** Deleting file `package.mak'No rule to make target `package.mak', needed by `.interfaces'
    .  Stop.
    gmake[1]: *** No rule to make target `package.mak', needed by `.interfaces'.  Stop.
    xdctools_3_32_00_06_core\gmake.exe: *** [packages/ti/drivers/ports,.interfaces] Error 2
    xdctools_3_32_00_06_core\gmake.exe: *** Waiting for unfinished jobs....
    xdctools_3_32_00_06_core\gmake.exe: *** [packages/ti/drivers,.interfaces] Error 2
    xdctools_3_32_00_06_core\gmake.exe: *** [packages/ti/mw/fatfs,.interfaces] Error 2
    js: "C:/ti/tirtos_tivac_2_16_00_08/products/bios_6_45_01_29/packages/ti/targets/arm/elf/IArm.xs", line 77: Error: The compiler in c:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.5 is not compatible with this version of TI-RTOS or SYS/BIOS. Please use Arm compiler 5.2.2 or newer.
    gmake[1]: *** Deleting file `package.mak'
    gmake[1]: *** No rule to make target `package.mak', needed by `.interfaces'.  Stop.
    xdctools_3_32_00_06_core\gmake.exe: *** [packages/ti/mw/wifi/cc3x00,.interfaces] Error 2
    gmake[1]: *** [all] Error 2
    gmake[1]: Leaving directory `c:/ti/tirtos_tivac_2_16_00_08/products/tidrivers_tivac_2_16_00_08'
    make: *** [drivers] Error 2

    I installed GetGnuWin32 and ran the command "make -f tirtos.mak drivers". That's the log from this command. I believe ti-rtos was not able to be compiled.

  • You're welcome.

    daniolip said:
    Are there any downsides by enabling such functions? If not, why they were disabled in the first place? For smaller code size?

    I would guess they were disabled for smaller code size, but I don't have any particular insight to that.

    daniolip said:
    Also another question, which program I should install to be able to run "gmake"? On the userguide that's not mentioned.

    I appears from your next post that you found the gmake.exe :)

    Regards,

    - Rob

  • daniolip said:
    I installed GetGnuWin32 and ran the command "make -f tirtos.mak drivers". That's the log from this command. I believe ti-rtos was not able to be compiled.

    That's strange, I haven't seen that one before.  5.2.5 sure seems later than 5.2.2.

    Would you please create a new thread on this issue?  If this appears in a new thread then it can reach the proper engineer or group (which might end up being me anyways).

    Meanwhile I will look for an answer to your issue.

    Regards,

    - Rob

  • I've created a new thread as asked.

    Link: e2e.ti.com/.../794609