using typedef-name 'fpos_t' after 'struct'

I went to calibrate my printer and receive this error. I think it has to due with an update but i cant figure out how to reverse it.

I have completely reinstalled the Arduino software and removed all traces of firmware then restarted.

This error only occurs when i activate sdsupport in my configuration h

Arduino: 1.6.11 (Windows 10), Board: "Arduino Mega ADK"

^

Using library LiquidCrystal at version 1.0.5 in folder: C:\Program Files (x86)\Arduino\libraries\LiquidCrystal exit status 1 using typedef-name 'fpos_t' after 'struct'

I happened to recognize your error because I had just been through this with someone else, otherwise there’s no way anyone could help you based on the extremely limited information you provided. Please try to do better if you post to the Arduino Forum again. We want to help you but you need to help us to help you. You should have stated which printer firmware you’re using with a link to it. That fragment of the error output you posted is practically useless. When there is an error you’ll see a button “Copy error message” on the right side of the orange bar. Click that button. Then paste the error in a forum post USING CODE TAGS(the </> button on the toolbar). The reason for the code tags is to make sure your error message is properly formatted, easy to read and copy to an editor or the IDE. Always use code tags when you post any warning/error message or code to the forum.

Someone recently reported the same issue with Marlin and this fixed the issue

  • Tools > Board > Boards Manager… > Arduino AVR Boards(click on it) > select 1.6.11 from the “Select version” menu > Install
  • After installation completes click the “Close” button

The problem is caused by the new compiler version included with Arduino AVR Boards 1.6.12 and later, it is more picky about the bad code that someone wrote. You will need to avoid upgrading to any Arduino AVR Boards version above 1.6.11 until someone fixes the problem in the Marlin code.

Are you using the latest version of the real Marlin firmware or is it some older version or a non-standard modified version?

I thought less was more sorry about that.

The firmware is from a Facebook group site.

I have no idea how this stuff works I'm using a Tarantula Printer with a Mks 1.2 board

Is there a better source for 3d printing firmware?

Ha, yes same printer as the other user who had the same problem: http://forum.arduino.cc/index.php?topic=418708. I had asked them to post the solution to that Facebook group to save others from the same trouble but maybe they never did it or you didn't see.

So follow my instructions I posted in my last message and that error should be solved.

As for the firmware source. I'm not sure because I don't own one but getting your firmware from a Facebook group seems like a bad idea to me. The official Marlin is here: https://github.com/MarlinFirmware/Marlin. That's where you get the most up to date version and can follow all the development of the firmware. However, Marlin is made to work on many different 3D printers so you might need to do some configuration specific to your printer. Probably this is the idea behind the Tarantula version but I think it would be better if they just gave easy to follow instructions for how to configure the real Marlin. The Marlin developers may have already fixed this bug, or if not they will do it soon, but you will have to wait until whoever set up the Tarantula version gets around to updating to the new version.

Thank you very much.

I posted your solution to the Facebook page, I did not find one there.

I will check out the firmware, from what I can tell the Facebook firmware was just edited to dumb it down for newbies like me.

Is it working now?

Yes its working and the link you provided me with has a Firmware that looks like a very newly upgraded version of the one I'm using. I'll be switching to it.

Glad to hear it's working! Thanks for posting the fix to the Facebook group. I'm sure that will save some other people from running into this issue.

Yea, I know this is an old thread... but... it may be worth noting the Skynet firmware is still fouled up and I had to download the 1.6.0 IDE (for Mac) to get this to compile.

Sheesh.

But, it did compile and seems to work on my printer.

Pert, once again thank you for your valuable help here. More than once you've come to the rescue for my problems.

I'm glad if I've been able to provide some assistance!

boa noite, estou com esses erroa ao tentar instalar o lcd 18364

Arduino: 1.8.2 (Windows 10), Placa:"Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

Opções de compilação alteradas, recompilando tudo In file included from sketch\SdFile.h:27:0,

from sketch\cardreader.h:8,

from sketch\Marlin_main.cpp:44:

SdBaseFile.h:38: error: using typedef-name 'fpos_t' after 'struct'

struct fpos_t {

^

In file included from sketch\Marlin.h:10:0,

from sketch\Marlin_main.cpp:30:

d:\impressora 3 d\projeto vinicios imp 3d\impressora 3d em stl\software impressora 3d\arduino-1.8.2-windows\arduino-1.8.2\hardware\tools\avr\avr\include\stdio.h:950:33: note: 'fpos_t' has a previous declaration here

extension typedef long long fpos_t;

^

exit status 1 using typedef-name 'fpos_t' after 'struct'

Este relatório teria mais informações com "Mostrar a saida detalhada durante a compilação" opção pode ser ativada em "Arquivo -> Preferências"

atenciosamente Marco Aurélio - Uberlândia - Minas Gerais Brasil

I know it’s been a while since you asked for help, but I managed to fix it… all you need to do is change all fpos_t occurrences to filepos_t

Also, I submitted a Pull Request to fix it on the official Ender-3 github repository

marcoeronivaina:
boa noite, estou com esses erroa ao tentar instalar o lcd 18364

Arduino: 1.8.2 (Windows 10), Placa:“Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)”

Opções de compilação alteradas, recompilando tudo
In file included from sketch\SdFile.h:27:0,

from sketch\cardreader.h:8,

from sketch\Marlin_main.cpp:44:

SdBaseFile.h:38: error: using typedef-name ‘fpos_t’ after ‘struct’

struct fpos_t {

^

In file included from sketch\Marlin.h:10:0,

from sketch\Marlin_main.cpp:30:

d:\impressora 3 d\projeto vinicios imp 3d\impressora 3d em stl\software impressora 3d\arduino-1.8.2-windows\arduino-1.8.2\hardware\tools\avr\avr\include\stdio.h:950:33: note: ‘fpos_t’ has a previous declaration here

extension typedef long long fpos_t;

^

exit status 1
using typedef-name ‘fpos_t’ after ‘struct’

Este relatório teria mais informações com
“Mostrar a saida detalhada durante a compilação”
opção pode ser ativada em “Arquivo → Preferências”

atenciosamente Marco Aurélio - Uberlândia - Minas Gerais Brasil