|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Ошибка компиляции LNK2019 |
|
C/C++ - Ошибка компиляции LNK2019
|
Старожил Сообщения: 154 |
Решил написать небольшой велосипед для работы с форматом BMP. Написал структуры данных, пытаюсь скомпилить - получаю error LNK2019.
Код: http://pastebin.com/cLcJ3mAJ |
|
Отправлено: 15:50, 19-09-2010 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать belk94 компиляция как раз проходит. LNK это ошибка линковки.
В данном коде void main должна хоть как-то определенна. Например void main { } Это избавит в будущем от потенциальной ошибки LNK1561: entry point must be defined По данной ошибке (LNK2019 unresolved external symbol 'symbol' referenced in function 'function'), возможно пути к Lib не определенны. |
Отправлено: 23:21, 19-09-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 154
|
Профиль | Отправить PM | Цитировать Admiral, что означает "пути к Lib"?
|
Отправлено: 23:25, 19-09-2010 | #3 |
Ветеран Сообщения: 3320
|
Профиль | Отправить PM | Цитировать belk94 вот на этом скриншоте строка Additional Library Directories
Скрин отсюда для 2005й версии Visual C++, в 2008 так же. Добираться так: Tools -> Options -> Projects and Solutions -> VC++ Directories -> Show directories for: -> Library files. Это всего лишь предположения, если проект состоит только из этого файла, а с путями всё ОК выведется ошибка LNK1561, а не LNK2019. А какой полностью текст ошибки? |
Отправлено: 23:43, 19-09-2010 | #4 |
Старожил Сообщения: 154
|
Профиль | Отправить PM | Цитировать MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
А с библиотеками всё в порядке - на этой же Студии уже делал несколько проектов. |
|
Отправлено: 00:48, 20-09-2010 | #5 |
ИО Капитана Очевидности Сообщения: 5387
|
Профиль | Отправить PM | Цитировать Цитата belk94:
1. Функция-шаблон реализована в файле .cpp. Поскольку код такой функции создаётся для каждого из параметров по мере использования, её код должен быть помещён в .h 2. Код функции в библиотеке не был скомпилирован по причине неиспользования в самой библиотеке. (лечится добавлением особой команды, которую я уже не помню) 3. Не совпадают параметры вызова функции, указанные по-умолчанию в свойствах проекта программы и подключаемой библиотеки. Во избежание этого всегда надо указывать __fastcall или аналогичную команду. В*данном проекте вижу следующие нестыковки 1. Отсутствуют параметры вызова у функций 2. Параметры функции main не соответствуют стандартным 3. Методы operator= должны возвращать ссылку на сам объект |
|
------- Отправлено: 07:18, 20-09-2010 | #6 |
Старожил Сообщения: 154
|
Профиль | Отправить PM | Цитировать Цитата El Scorpio:
Цитата El Scorpio:
Цитата El Scorpio:
|
|||
Отправлено: 19:39, 20-09-2010 | #7 |
ИО Капитана Очевидности Сообщения: 5387
|
Профиль | Отправить PM | Цитировать belk94, конечно, это не так важно, но возвращение результата в функциях operator= (а также +=, -= и т.д.) позволяет использовать его в составных командах.
a = b = c; F (a += b); (a -= b).M(); Цитата belk94:
Если в каком-либо файле директивами предпроцессора будут заданы другие параметры вызова функций, то в результате на этапе линковки компилятор не найдёт в объектном модуле нужной функции |
|
------- Отправлено: 08:09, 22-09-2010 | #8 |
Старожил Сообщения: 154
|
Профиль | Отправить PM | Цитировать El Scorpio, у меня слишком простая программа для всего этого.
|
Отправлено: 18:11, 22-09-2010 | #9 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
C/C++ - При компиляции программы выскакивает ошибка | m.s.dos | Программирование и базы данных | 1 | 31-05-2009 16:10 | |
FreeBSD - ошибка компиляции ядра 7.1 | kirimey | Общий по FreeBSD | 7 | 02-05-2009 15:48 | |
Софт/IDE - Помогите новичку, ошибка при компиляции. | KEKS-KEKS | Программирование и базы данных | 6 | 16-07-2007 22:46 | |
Ошибка при компиляции ядра | Junior Penguin | Общий по Linux | 22 | 21-11-2005 11:01 | |
Ошибка компиляции ifmail | BurzumII | Программное обеспечение Linux и FreeBSD | 6 | 09-01-2005 19:54 |
|