С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
1 / 1 / 0
Регистрация: 14.10.2013
Сообщений: 58

Visual studio 2012 и GoogleTest

01.04.2017, 14:19. Показов 1658. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Необходимо подключить гугл тесты к моему проекту, делал всё по этой инструкции, все нужные файлы подключил, скомпилировал googletest, но при сборке тестового проекта у линкера "снесло башню".

Все ошибки при построении:
Кликните здесь для просмотра всего текста
1>------ Построение начато: проект: lab2_test, Конфигурация: Debug Win32 ------
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""private: virtual void __thiscall circle::redraw(void)" (?redraw@circle@@EAEXXZ)"
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall circle::circle(int,struct paint_area_info)" (??0circle@@QAE@HUpaint_area_info@@@Z) в функции "private: virtual void __thiscall circle_test_constructor_Test::TestBody(v oid)" (?TestBody@circle_test_constructor_Test@ @EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall circle::getX(void)" (?getX@circle@@QAEHXZ) в функции "private: virtual void __thiscall circle_test_constructor_Test::TestBody(v oid)" (?TestBody@circle_test_constructor_Test@ @EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall circle::getY(void)" (?getY@circle@@QAEHXZ) в функции "private: virtual void __thiscall circle_test_constructor_Test::TestBody(v oid)" (?TestBody@circle_test_constructor_Test@ @EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall circle::get_radius(void)" (?get_radius@circle@@QAEHXZ) в функции "private: virtual void __thiscall circle_test_constructor_Test::TestBody(v oid)" (?TestBody@circle_test_constructor_Test@ @EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall circle::draw(int,int)" (?draw@circle@@QAEXHH@Z) в функции "private: virtual void __thiscall circle_test_constructor_Test::TestBody(v oid)" (?TestBody@circle_test_constructor_Test@ @EAEXXZ)
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall circle::rotate(int)" (?rotate@circle@@UAEXH@Z)"
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall circle::scale(float)" (?scale@circle@@UAEXM@Z)"
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: virtual float __thiscall circle:erimetr(void)" (?perimetr@circle@@UAEMXZ) в функции "private: virtual void __thiscall circle_test_perimeter_Test::TestBody(voi d)" (?TestBody@circle_test_perimeter_Test@@E AEXXZ)
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""private: virtual void __thiscall ellipse::redraw(void)" (?redraw@ellipse@@EAEXXZ)"
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall ellipse::ellipse(int,int,struct paint_area_info)" (??0ellipse@@QAE@HHUpaint_area_info@@@Z) в функции "private: virtual void __thiscall ellipse_test_constructor_Test::TestBody( void)" (?TestBody@ellipse_test_constructor_Test @@EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall ellipse::getX(void)" (?getX@ellipse@@QAEHXZ) в функции "private: virtual void __thiscall ellipse_test_constructor_Test::TestBody( void)" (?TestBody@ellipse_test_constructor_Test @@EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall ellipse::getY(void)" (?getY@ellipse@@QAEHXZ) в функции "private: virtual void __thiscall ellipse_test_constructor_Test::TestBody( void)" (?TestBody@ellipse_test_constructor_Test @@EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall ellipse::get_big_axle(void)" (?get_big_axle@ellipse@@QAEHXZ) в функции "private: virtual void __thiscall ellipse_test_constructor_Test::TestBody( void)" (?TestBody@ellipse_test_constructor_Test @@EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall ellipse::get_small_axle(void)" (?get_small_axle@ellipse@@QAEHXZ) в функции "private: virtual void __thiscall ellipse_test_constructor_Test::TestBody( void)" (?TestBody@ellipse_test_constructor_Test @@EAEXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall ellipse::draw(int,int)" (?draw@ellipse@@QAEXHH@Z) в функции "private: virtual void __thiscall ellipse_test_constructor_Test::TestBody( void)" (?TestBody@ellipse_test_constructor_Test @@EAEXXZ)
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall ellipse::rotate(int)" (?rotate@ellipse@@UAEXH@Z)"
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall ellipse::scale(float)" (?scale@ellipse@@UAEXM@Z)"
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: virtual float __thiscall ellipse:erimetr(void)" (?perimetr@ellipse@@UAEMXZ) в функции "private: virtual void __thiscall ellipse_test_perimeter_Test::TestBody(vo id)" (?TestBody@ellipse_test_perimeter_Test@@ EAEXXZ)
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""private: virtual void __thiscall arc::redraw(void)" (?redraw@arc@@EAEXXZ)"
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall arc::arc(int,int,int,struct paint_area_info)" (??0arc@@QAE@HHHUpaint_area_info@@@Z) в функции "private: virtual void __thiscall arc_test_constructor_Test::TestBody(void )" (?TestBody@arc_test_constructor_Test@@EA EXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall arc::getX(void)" (?getX@arc@@QAEHXZ) в функции "private: virtual void __thiscall arc_test_constructor_Test::TestBody(void )" (?TestBody@arc_test_constructor_Test@@EA EXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall arc::getY(void)" (?getY@arc@@QAEHXZ) в функции "private: virtual void __thiscall arc_test_constructor_Test::TestBody(void )" (?TestBody@arc_test_constructor_Test@@EA EXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall arc::get_radius(void)" (?get_radius@arc@@QAEHXZ) в функции "private: virtual void __thiscall arc_test_constructor_Test::TestBody(void )" (?TestBody@arc_test_constructor_Test@@EA EXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall arc::get_start_angle(void)" (?get_start_angle@arc@@QAEHXZ) в функции "private: virtual void __thiscall arc_test_constructor_Test::TestBody(void )" (?TestBody@arc_test_constructor_Test@@EA EXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: int __thiscall arc::get_stop_angle(void)" (?get_stop_angle@arc@@QAEHXZ) в функции "private: virtual void __thiscall arc_test_constructor_Test::TestBody(void )" (?TestBody@arc_test_constructor_Test@@EA EXXZ)
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall arc::draw(int,int)" (?draw@arc@@QAEXHH@Z) в функции "private: virtual void __thiscall arc_test_constructor_Test::TestBody(void )" (?TestBody@arc_test_constructor_Test@@EA EXXZ)
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall arc::rotate(int)" (?rotate@arc@@UAEXH@Z)"
1>lab2_test.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall arc::scale(float)" (?scale@arc@@UAEXM@Z)"
1>lab2_test.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: virtual float __thiscall arc:erimetr(void)" (?perimetr@arc@@UAEMXZ) в функции "private: virtual void __thiscall arc_test_perimeter_Test::TestBody(void)" (?TestBody@arc_test_perimeter_Test@@EAEX XZ)
1>googletest.lib(gtest-all.obj) : error LNK2019: ссылка на неразрешенный внешний символ __imp___CrtDbgReportW в функции "public: bool __thiscall std::_List_const_iterator<class std::_List_val<struct std::_List_simple_types<struct std:air<char,char const *> > > >::operator==(class std::_List_const_iterator<class std::_List_val<struct std::_List_simple_types<struct std:air<char,char const *> > > > const &)const " (??8?$_List_const_iterator@V?$_List_val@ U?$_List_simple_types@U?$pair@DPBD@std@@ @std@@@std@@@std@@QBE_NABV01@@Z)
1>E:\Учёба\4 семестр\ООП\lab2\Code\Debug\lab2_test.ex e : fatal error LNK1120: неразрешенных внешних элементов: 31
========== Построение: успешно: 0, с ошибками: 1, без изменений: 2, пропущено: 0 ==========


В чём проблема? Заранее спасибо!
Миниатюры
Visual studio 2012 и GoogleTest  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.04.2017, 14:19
Ответы с готовыми решениями:

Visual Studio 2012
Суть такова: Создал Dll-проект, всё нужное запилил туда. Затем создал Win32Console в сие же проект. Добавил нужные ссылки, все хэдеры...

Visual Studio 2012 и Windows 8
Установил себе ВИнду 8 и визуалку express 2012. но я не могу создать проект консольного приложения win32. как его создать? в списке типов...

WinForms в Visual Studio 2012
Здравствуйте. Не могли бы вы сказать почему убрали Windows Form в 2012 версии Студии? С чем это связано? Слышал что хотят пересодить всех...

3
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,893
01.04.2017, 15:05
Лучший ответ Сообщение было отмечено skorpion97 как решение

Решение

Цитата Сообщение от skorpion97 Посмотреть сообщение
Построение начато: проект: lab2_test
skorpion97, вы собираете проект lab2_test в нем нет реализации классов circle, ellipse и т.д. т.е. в этом проекте не хватает файлов circle.cpp, ellipse.cpp и т.д.
1
1 / 1 / 0
Регистрация: 14.10.2013
Сообщений: 58
01.04.2017, 15:39  [ТС]
schdub, спасибо, помогло, осталась лишь одна ошибка:

1> Создание кода...
1>googletest.lib(gtest-all.obj) : error LNK2019: ссылка на неразрешенный внешний символ __imp___CrtDbgReportW в функции "public: bool __thiscall std::_List_const_iterator<class std::_List_val<struct std::_List_simple_types<struct std:air<char,char const *> > > >::operator==(class std::_List_const_iterator<class std::_List_val<struct std::_List_simple_types<struct std:air<char,char const *> > > > const &)const " (??8?$_List_const_iterator@V?$_List_val@ U?$_List_simple_types@U?$pair@DPBD@std@@ @std@@@std@@@std@@QBE_NABV01@@Z)
1>E:\ООП\lab2\Code\Debug\lab2_test.exe : fatal error LNK1120: неразрешенных внешних элементов: 1
0
1 / 1 / 0
Регистрация: 14.10.2013
Сообщений: 58
01.04.2017, 15:56  [ТС]
Проблему решил, включив многопоточную отладку DLL (/MDd)
Миниатюры
Visual studio 2012 и GoogleTest  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.04.2017, 15:56
Помогаю со студенческими работами здесь

Компоненты в Visual Studio 2012
Здравствуйте! При использовании компонентов, а именно label , richtextbox, textbox , компилятор выдает странную ошибку,...

Visual Studio 2012[Sistem::IO]
Возникла проблема при попытке использовать пространство имён Sistem::IO. Пишу так: using namespace Windows::System::IO; А...

Ребята Visual Studio 2012
Ребята Visual Studio 2012 научите на ней прогать, писать какие нибудь оконные проги, с графикой поиграться. Книжки может какие- нибудь...

Массивы в Visual Studio 2012
Есть ли что то в Visual Studio 2012 для двумерных массивов типа StringGrid в Delphi? Или хотя бы что то из области таблиц?

Visual Studio 2012 и стандарт C++11
1) MVS 2012 Express не поддерживает стандарт C++11: умалчиваемые функции в классах (спецификатор &quot;= default&quot;), константные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru