2016-12-10 7 views
0

Я получаю следующее сообщение об ошибке при попытке скомпилировать мой код: error LNK1561: entry point must be defined.Ошибка: LINK: фатальный LNK1561 ошибки: точка входа должна быть определена с ++

фон: Я пытаюсь запустить приложение Win32 CONSOLE и использовать Google Основы испытаний.

У меня есть моя основная функция, и я уже проверил, что мой Linker установлен на Console (/SUBSYSTEM:CONSOLE) за некоторые другие предложения по многим вопросам, которые я видел. Я не уверен, почему мне не нравится моя основная функция, потому что это определяется как точка входа.

Вот мой код:

bob.h

#ifndef BOB_BOB_H 
#define BOB_BOB_H 

#include <string> 
using namespace std; 

namespace bob { 
    string hey(const string&); 
} 

#endif 

bob.cpp

#include "bob.h" 

using namespace std; 

namespace bob { 

string hey(const string& theString) 
{ 
    return "Whatever." 
} 

} 

bob_tests.cpp

// bob_tests.cpp : Defines the entry point for the console application 
// 

#include "bob.h" 
#include <gtest/gtest.h> 

int main(int argc, char** argv) { 
    testing::InitGoogleTest(&argc, argv); 
    return RUN_ALL_TESTS(); 
} 

TEST(Bob, stating_something) 
{ 
    EXPECT_STREQ("Whatever." bob::hey("Tom-ay-to, tom-aaaah-to.")); 
} 

ответ

0

Вы должны установить точка входа. Я видел, что вы написали «Console (/ SubSystem: CONSOLE)», поэтому я думаю, что вы на Visual Studio, поэтому вам нужно перейти в Linker-> Advanced -> (убедитесь, что для параметра «Нет записи» установлено значение «Нет записи») Нет ") -> Запись должна быть установлена ​​на" main ".

+0

«Нет записи» установлено в №. Должен ли я изменить его? – WitchKing17

+0

Linker-> Advanced-> Entry = main, Linker-> Advanced-> No Entry = No –

+0

Это не сработало ... все равно получите ту же ошибку – WitchKing17

 Смежные вопросы

  • Нет связанных вопросов^_^