I am working in an Arduino project in visual studio. I need to get and set time to a RTC clock. That's why I am adding a ds3231 header file in my project from GitHub. When I want to build "it's showing me linking error.

cccSeqVu.ltrans0.o*: (.text.startup+0x1ea): undefined reference to DS3231_init(unsigned char)

My code is given below.

#include <Wire.h>
#include "ds3231.h"
void setup(){

void loop(){

Can anyone please help me to find out what I have missed.

  • Did you add the rest of the project or just the header file? If it's failing at linking it implies you haven't built the .cpp file
    – hardillb
    Jan 8, 2023 at 16:36
  • I have only added header file. Is there anything else need to add ? Jan 8, 2023 at 16:41

1 Answer 1


You need to add the whole git project as a library, then include the header file.

The header file is just the list of function names and constants, with out the corresponding cpp file there is no actual implementation of the library that knows how to talk to the RTC.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.