Error including C header file

I am trying to include a library for an Arduino project that includes a .h and .c file… I have added the zip to my library and included it in my code. When I comment out the code that needs the header file it compiles but obviously does not do what I need it to because the functional code is commented out. When I uncomment the code it says that the variables that use the header file are not defined. I know it is fairly vague but if anyone could shed some light on this I would really appreciate it. I am attaching all the code and error messages.

/Users/noname/Downloads/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,–gc-sections -mmcu=atmega328p -o “/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567/SOLALGCODEPLSWORK.ino.elf” “/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567/sketch/SOLALGCODEPLSWORK.ino.cpp.o” “/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567/libraries/HEADER/solpos.c.o” “/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567/libraries/Wire/Wire.cpp.o” “/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567/libraries/Wire/utility/twi.c.o” “/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567/libraries/SparkFun_DS1307_RTC_Arduino_Library-master/SparkFunDS1307RTC.cpp.o” “/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567/core/core.a” “-L/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T/arduino_build_677567” -lm
/var/folders/mj/6hdkjxv90n543mt3hk8h3rgw0000gn/T//ccGV7iaU.ltrans0.ltrans.o: In function computeAng': /Users/noname/Documents/Arduino/SOLALGCODEPLSWORK/SOLALGCODEPLSWORK.ino:62: undefined reference to S_init(posdata*)’
/Users/noname/Documents/Arduino/SOLALGCODEPLSWORK/SOLALGCODEPLSWORK.ino:96: undefined reference to S_solpos(posdata*)' /Users/noname/Documents/Arduino/SOLALGCODEPLSWORK/SOLALGCODEPLSWORK.ino:97: undefined reference to S_decode(long, posdata*)’
/Users/noname/Documents/Arduino/SOLALGCODEPLSWORK/SOLALGCODEPLSWORK.ino:180: undefined reference to S_solpos(posdata*)' /Users/noname/Documents/Arduino/SOLALGCODEPLSWORK/SOLALGCODEPLSWORK.ino:181: undefined reference to S_decode(long, posdata*)’
collect2: error: ld returned 1 exit status
Using library HEADER in folder: /Users/noname/Documents/Arduino/libraries/HEADER (legacy)
Using library Wire at version 1.0 in folder: /Users/noname/Downloads/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire
Using library SparkFun_DS1307_RTC_Arduino_Library-master at version 1.0.1 in folder: /Users/noname/Documents/Arduino/libraries/SparkFun_DS1307_RTC_Arduino_Library-master
exit status 1
Error compiling for board Arduino/Genuino Uno.

SOLALGCODEPLSWORK.ino (7.33 KB)

headerSolAlg.zip (16.5 KB)

Rename your .c file to .cpp and see if it gets any better.

I am trying to include a library for an Arduino project that includes a .h and .c file.

Rename your .c file to .cpp and see if it gets any better.

Because unless your .h files includes "extern "C"", the .ino file (compiled with C++) will assume that the functions in it are C++ functions, and apply "name mangling" depending on the function signatures.
Ie: a pure C library needs some additional work before it can be used in C++ code.