Compilation error for Arduino / Genuino Mega or Mega 2560 board

Hi friends,

I installed a library for reading and writing csv file

been I compiled this example

/**
 *  Project: CSVFile - examples
 *  @author: Slawomir Figiel
 *  @contact: fivitti@gmail.com
 *  @date: 14.08.2016
 *  @version: 1.0.1
 *  @license: MIT
 */

/**
 *	Simply example of write, read and edit CSV file.
 */

#include <SdFat.h>
#include <CSVFile.h>

// =*= CONFIG =*=
// SPI pinout
#define PIN_SPI_CLK 13
#define PIN_SPI_MOSI 11
#define PIN_SPI_MISO 12
#define PIN_SD_CS 10
// If you have connected other SPI device then
// put here number of pin for disable its.
// Provide -1 if you don't have other devices.
#define PIN_OTHER_DEVICE_CS -1
// Change this value if you have problems with SD card
// Available values: SPI_QUARTER_SPEED //SPI_HALF_SPEED
//It is enum from SdFat
#define SD_CARD_SPEED SPI_FULL_SPEED 

#define FILENAME "CSV.csv"

// =*= END CONFIG =*=

SdFat sd;
CSVFile csv;

void setup() {
  // Setup pinout
  pinMode(PIN_SPI_MOSI, OUTPUT);
  pinMode(PIN_SPI_MISO, INPUT);
  pinMode(PIN_SPI_CLK, OUTPUT);
  //Disable SPI devices
  pinMode(PIN_SD_CS, OUTPUT);
  digitalWrite(PIN_SD_CS, HIGH);
  
  #if PIN_OTHER_DEVICE_CS > 0
  pinMode(PIN_OTHER_DEVICE_CS, OUTPUT);
  digitalWrite(PIN_OTHER_DEVICE_CS, HIGH);
  #endif //PIN_OTHER_DEVICE_CS > 0
    
  // Setup serial
  Serial.begin(9600);
  while (!Serial) { /* wait for Leonardo */ } 
  // Setup SD card
  if (!sd.begin(PIN_SD_CS, SD_CARD_SPEED))
  {
    Serial.println("SD card begin error");
    return;
  }
}

void waitForKey()
{
  while (Serial.read() >= 0) { }
  Serial.println(F("Type any character to repeat.\n"));
  while (Serial.read() <= 0) { }
}

void initSdFile()
{
  if (sd.exists(FILENAME) && !sd.remove(FILENAME))
  {
    Serial.println("Failed init remove file");
    return;
  }
  if (!csv.open(FILENAME, O_RDWR | O_CREAT)) {
    Serial.println("Failed open file");
  }
}

void loop() {
  // Data in CSV file is stored in lines.
  // Each line have some (or zero) fields.

  // Each line is ended by end line character '\n',
  // (UNIX style - without '\r').
  
  initSdFile();

  // Create CSV
  csv.addField("Hello");
  csv.addField("world!");
  csv.addLine();
  csv.addField(7, 2);

  // Read CSV
  csv.gotoBeginOfFile();

  int bufferSize = 5;
  // Good practice is declare buffer larger by one then need
  // and put null char as end element. It is prevent by
  // overbuffer.
  char buffer[bufferSize + 1];
  buffer[bufferSize] = '\0';
  int numBuffer = 0;

  csv.readField(buffer, bufferSize);
  Serial.println(buffer);
  csv.nextField();
  csv.readField(buffer, bufferSize);
  Serial.println(buffer);
  csv.nextLine();
  csv.readField(numBuffer, buffer, bufferSize);
  Serial.println(numBuffer);

  // Edit CSV
  csv.gotoBeginOfField();
  csv.editField(11);
  csv.gotoBeginOfField();
  csv.readField(numBuffer, buffer, bufferSize);
  Serial.println(numBuffer);
  
  // Don't forget close the file.
  csv.close();
   
  waitForKey();
}

Arduino answered me with this letter

Compilation error for Arduino / Genuino Mega or Mega 2560 board

Plz, help me to solve this problem

Please do this:

  • File > Preferences > Show verbose output during: > compilation (check) > OK
  • Sketch > Verify/Compile
  • After the compilation fails you'll see a button on the right side of the orange bar "Copy error messages". Click that button.
  • Paste the error messages in a reply here USING CODE TAGS (</> button on the toolbar).

Compilation error for Arduino / Genuino Mega or Mega 2560 board

Is that the only error you see ?

There is normally a lot of other detail ..................

And if you want the program to work on a Mega 2560 board its a good idea to use the correct pins for the SPI interface on a Mega 2560 and not leave the program at the Arduino UNO defaults.

C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware -tools C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\tools-builder -tools C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -built-in-libraries C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\libraries -libraries C:\Users\Abdo\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=0X2341_0X0042 -ide-version=10805 -build-path C:\Users\Abdo\AppData\Local\Temp\arduino_build_24448 -warnings=none -build-cache C:\Users\Abdo\AppData\Local\Temp\arduino_cache_280811 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -verbose C:\Users\Abdo\Documents\Arduino\libraries\Arduino-CSV-File-master\examples\HelloWorld\HelloWorld.ino
C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\arduino-builder -compile -logger=machine -hardware C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware -tools C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\tools-builder -tools C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -built-in-libraries C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\libraries -libraries C:\Users\Abdo\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=0X2341_0X0042 -ide-version=10805 -build-path C:\Users\Abdo\AppData\Local\Temp\arduino_build_24448 -warnings=none -build-cache C:\Users\Abdo\AppData\Local\Temp\arduino_cache_280811 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr -verbose C:\Users\Abdo\Documents\Arduino\libraries\Arduino-CSV-File-master\examples\HelloWorld\HelloWorld.ino
Using board 'mega' from platform in folder: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\arduino\avr
Using core 'arduino' from platform in folder: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\arduino\avr
Detecting libraries used...
"C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\arduino\avr\variants\mega" "C:\Users\Abdo\AppData\Local\Temp\arduino_build_24448\sketch\HelloWorld.ino.cpp" -o "nul"
"C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt\hardware\arduino\avr\variants\mega" "C:\Users\Abdo\AppData\Local\Temp\arduino_build_24448\sketch\HelloWorld.ino.cpp" -o "C:\Users\Abdo\AppData\Local\Temp\arduino_build_24448\preproc\ctags_target_for_gcc_minus_e.cpp"
C:\Users\Abdo\Documents\Arduino\libraries\Arduino-CSV-File-master\examples\HelloWorld\HelloWorld.ino:14:19: fatal error: SdFat.h: No such file or directory

#include <SdFat.h>

^

compilation terminated.

exit status 1
Erreur de compilation pour la carte Arduino/Genuino Mega or Mega 2560

C:\Users\Abdo\Documents\Arduino\libraries\Arduino-CSV-File-master\examples\HelloWorld\HelloWorld.ino:14:19: fatal error: SdFat.h: No such file or directory

#include <SdFat.h>

Looks like the compiler cannot find the SDFat library, did you install it ?

In the future, use code tags, not the quote tags.

srnet:
Looks like the compiler cannot find the SDFat library, did you install it ?

Thanks, I solved my problem
The sdfat library not installed
Thanks, :slight_smile:

abdoboug:
Thanks, I solved my problem
The sdfat library not installed
Thanks, :slight_smile:

When you get a compile error its usually a good idea to read the errors, they are usually informative.