# FreeRTS file system and stdio lib

**URL:** <https://forums.freertos.org/t/freerts-file-system-and-stdio-lib/6014>\
**Category:** Kernel\
**Created:** [July 15, 2016, 3:55pm UTC](https://forums.freertos.org/t/freerts-file-system-and-stdio-lib/6014 "2016-07-15T15:55:30Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [July 15, 2016, 3:55pm UTC](https://forums.freertos.org/t/freerts-file-system-and-stdio-lib/6014/1 "2016-07-15T15:55:30Z")

</div>

**[rasty1](https://sourceforge.net/u/rasty1/)** wrote on [Friday, July 15, 2016](https://sourceforge.net/p/freertos/discussion/382005/thread/d3dd0290/#8a39):

Hi  
I’m tryng to port a library that uses file io intrerface from stdlib (fopen/fclose and so on)  
Surprisingly everything compiles and links, but I guess leads to nowhere in embedded system  
Is there any idea how to connect between stdio lib file operations and freertos file system?

Best regards  
Rasty

---

<div class="post-metadata">

**Author:** ![rtel](https://d3iykfbgfh8zhg.cloudfront.net/user_avatar/forums.freertos.org/rtel/32/31_2.png) [@rtel](https://forums.freertos.org/u/rtel)\
**Post date:** [July 16, 2016, 8:19am UTC](https://forums.freertos.org/t/freerts-file-system-and-stdio-lib/6014/2 "2016-07-16T08:19:18Z")

</div>

**[rtel](https://sourceforge.net/u/rtel/)** wrote on [Saturday, July 16, 2016](https://sourceforge.net/p/freertos/discussion/382005/thread/d3dd0290/#8a39/62d5):

If I understand you correctly, you want to call standard file IO  
functions, but have them map to the FreeRTOS+FAT versions. If that is  
correct I guess you could just create a header file with the mappings.  
The FreeRTOS+FAT versions append ff\_ to the start of the function names,  
so this would look something like:

```
#define fopen( file, mode ) ff_open( file, mode )
```

and so on for any function you need to use. Also FreeRTOS+FAT uses a  
header file called ff\_stdio.h rather than stdio.h, so you might need to  
have an stdio.h that itself just includes ff\_stdio.h.

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [July 16, 2016, 12:26pm UTC](https://forums.freertos.org/t/freerts-file-system-and-stdio-lib/6014/3 "2016-07-16T12:26:18Z")

</div>

**[rasty1](https://sourceforge.net/u/rasty1/)** wrote on [Saturday, July 16, 2016](https://sourceforge.net/p/freertos/discussion/382005/thread/d3dd0290/#dcd9):

It sounds very simple. Thanks
