Как избежать ошибок LNK2005 в Visual studio - PullRequest
1 голос
/ 07 декабря 2011

У меня есть эти файлы:

main.c

myLib.h

myLib.c

но когда я пытаюсь скомпилировать весь проект, возвращается эта ошибка:

1>myLib.obj : error LNK2005: _start_server already defined in main.obj
1>C:\Users\n3tpum63r\documents\visual studio 2010\Projects\NewMultiPlex2\Debug\main.exe : fatal error LNK1169: one or more multiply defined symbols found

Я искал это в Google и нашел это

"LNK2005 Errors When Link C Run-Time Libraries Are Linked Before MFC Libraries" 

но не могу это исправить.

Как можно исправить эту ошибку?

1 Ответ

3 голосов
/ 07 декабря 2011

Избавьтесь от строки # 1 myLib.h - обычно вы никогда не должны #inc включая файл .c.

И наоборот, в myLib.c вы, вероятно, должны добавить #include "myLib.h" вверху файла - на данном этапе в вашем проекте это не является строго обязательным, но это хорошая привычка, к которой нужно обращаться при запуске программирование в "реальном мире".

Выглядит так, как будто вы упускаете кучу системных #include в myLib.c.

Остальное выглядит более или менее нормально, и оно должно скомпилироваться и связать с вышеуказанными изменениями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...