[SOLVED] Undefined Reference to FS_Init

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • [SOLVED] Undefined Reference to FS_Init

      Hello,

      I am new to using emFile, and I would like to integrate it to an existing project that uses embOS.
      Before adding it to my project I decided to add it to a simple Hello World project, but I am unable to build it because the compiler cannot find the definition of several functions such as FS_init, FS_FormatLLIfRequired, FS_IsHLFormatted, etc...
      I believe those are part of the precompiled library that came with emFile, but for some reason cannot be accessed.
      Those are the steps that I followed:
      • Download emFile_Trial_V404f
      • Create a Hello World project in SES
      • Add the following folders from emFile to my working directory: Application, Config, FS, Sample, SEGGER.
      • Add the files with the same folder structure to my project
      • Include the paths for the directories and sub-directories by editing the options of my project in SES
      • Exclude the folder 'Sample' from the build
      • Exclude default 'main.c' file containing the "hello world" code
      • Build in Release mode
      Am I correct in assuming that the undefined functions are in fact defined in the .lib files (libFS_d_trial.lib or libFS_r_trial.lib) ?
      The user guide seems to reference a different emFile library with different folders. For example, I do not have the Sample/FS/Driver/RAM folder. Am I missing something or is there another guide, other than the one included in the emFile_Trial_V404f that matches the files that I have?

      I attached a screenshot showing what my project looks like as well as the error that I am seeing.
      Any help would be gladly appreciated, thank you!
      Images
      • emFile_hello_world.jpg

        468.06 kB, 1,920×1,049, viewed 1,429 times
    • Hi,

      The libraries found in the emFile_Trial_V404f.zip archive can be used only on Windows.
      You can used this trial package to test the file system on a Windows PC as described
      in the section "2.2 Using the Windows sample" of the emFile manual.

      If you want to test emFile on a target hardware you will have to use the emFile libraries
      that come with one of the evaluation software packages available from here:
      segger.com/evaluate-our-software/

      I am not sure what CPU you are using but if it is a Cortex-M type you can use the emFile
      libraries found in the evaluation software package for SEGGER emPower board:
      segger.com/downloads/eval/Segg…er_CortexM_EmbeddedStudio

      Best regards,
      Marius
      Please read the forum rules before posting.

      Keep in mind, this is *not* a support forum.
      Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
      Should you be entitled to support you can contact us via our support system: segger.com/ticket/

      Or you can contact us via e-mail.
    • Thank you Marius for the quick reply.
      I am working with the STM32F4 microcontroller which is a Cortex-M, so the link you sent me should work. I will try this library and update this post accordingly.
    • ubudum wrote:

      Thank you Marius for the quick reply.
      I am working with the STM32F4 microcontroller which is a Cortex-M, so the link you sent me should work. I will try this library and update this post accordingly.
      I was able to add emFile from emPower to my project and build it without any issue.
      Thanks again!