Здравствуйте. У меня есть несколько файлов main.cpp main.h Patient.cpp Patient.h . Компилирую командой: ‘g++ -o main main.cpp Patient.cpp’ Раньше все компилировалось нормально и работало, до того момента как добавил статические методы в class Patient. Вызываю эти методы из функции main способом:
Patient::method();
Так вот, теперь при компиляции вышеуказанной командой выдает кучу ошибок, я так подозреваю связанных с линковкой:
/usr/bin/ld: /tmp/ccX75qLM.o: в функции «addPatient()»:
main.cpp:(.text+0x37b): неопределённая ссылка на «Patient::Patient()»
/usr/bin/ld: main.cpp:(.text+0x42b): неопределённая ссылка на «Patient::isLastname(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)»
/usr/bin/ld: main.cpp:(.text+0x4b8): неопределённая ссылка на «Patient::doLastname(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)»
/usr/bin/ld: main.cpp:(.text+0x613): неопределённая ссылка на «Patient::isDay(int)»
/usr/bin/ld: main.cpp:(.text+0x6dd): неопределённая ссылка на «Patient::isMonth(int)»
/usr/bin/ld: main.cpp:(.text+0x7a7): неопределённая ссылка на «Patient::isYear(int)»
/usr/bin/ld: main.cpp:(.text+0xb6f): неопределённая ссылка на «Patient::isLastname(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)»
/usr/bin/ld: main.cpp:(.text+0xbf7): неопределённая ссылка на «Patient::doLastname(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)»
/usr/bin/ld: main.cpp:(.text+0xcc2): неопределённая ссылка на «Patient::isInit(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)»
collect2: error: ld returned 1 exit status
Подскажите пожалуйста в чем у меня проблема и как правильно это все скомпилировать.