Lnk1561 entry point must be defined
LINK: фатальная ошибка LNK1561: точка входа должна быть определена ERROR IN VС++
29 SortOf [2013-06-12 19:12:00]
Я впервые установил MS VS VC++, чтобы начать программировать OpenGL с библиотекой GLFW. Я следую инструкциям по его установке на http://shawndeprey.blogspot.com/2012/02/setting-up-glfw-in-visual-studio-2010.html Затем я написал эту простую программу, просто чтобы протестировать ее, который работал на Eclipse:
Но потом я получил эту ужасную ошибку:
Я знаю, что я искал в Интернете, и единственное решение, которое я нашел, было «Для работы требуется функция main() «. У меня, очевидно, есть это, прямо там, но это все еще бросает мне ту же самую фатальную ошибку 🙁
Было бы здорово получить ответ о том, как это исправить. Может быть, у меня есть недостатки в процессе установки или что-то в этом роде.
c++ visual-c++ visual-studio
10 ответов
Это проект консоли или проект Windows? Я спрашиваю, потому что для Win32 и аналогичного проекта точка входа WinMain() .
- Щелкните правой кнопкой мыши проект (а не решение) с левой стороны.
- Затем нажмите «Свойства» → «Свойства конфигурации» → «Линкер» → «Система»
Если он говорит Subsystem Windows , ваша точка входа должна быть WinMain(), т.е.
Кроме того, говоря о комментариях. Это компиляция (или, точнее, ссылка), а не ошибка времени выполнения. Когда вы начинаете отлаживать, компилятор должен сделать полную программу (а не только для компиляции вашего модуля), и именно тогда возникает ошибка.
Он даже не доходит до того, что загружается и выполняется.
8 ash [2013-06-12 19:44:00]
Невозможно найти точку входа для вашей программы, в данном случае main() . Вероятно, ваши настройки компоновщика неверны.
В моем случае программа работала нормально, а потом, через день, я просто столкнулся с этой проблемой, ничего не делая.
Решение, которое сработало (до редактирования область была пуста):
измените его на Консоль (/SUBSYSTEM: CONSOLE), она будет работать
Вы можете получить эту ошибку, если вы определяете проект как .exe, но хотите создать .lib или .dll
0 sdff [2015-10-29 04:15:00]
У меня это произошло на VS после того, как я изменил окончание строки файла. Изменение их обратно в Windows CR LF исправило проблему.
0 lizard [2018-07-31 20:44:00]
Главное отсутствовало в конфигурации точки входа.
0 Brackets [2016-12-30 20:51:00]
В Visual Studio: Свойства -> Расширенные -> Точка входа -> записать только имя функции, с которой программа должна начинаться, с учетом регистра, без каких-либо скобок и аргументов командной строки.
0 dude [2017-10-09 18:51:00]
Если у кого-то возникли проблемы с этим, я сам получил один пустой .cpp файл в другом проекте даже (но в том же решении) и просто дал ему простой main с возвратом 0; и затем работал хорошо.
Я только что узнал, что в моем коде функция int main() не была включена, и это было: int choice() и еще одна, называемая int choice() внутри первой. Тогда проблем может быть 2: вы должны включить функцию int main(), или вы не можете иметь две переменные/функции или объявления (int, string, char, double, float, double float. ) в одной и той же функции, Я хочу сказать, что я просто думаю, потому что я просто пишу для развлечения и никогда не учился c++.