| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > С++ + С Resolving Externals |
| Автор: nerdy_weirdie 28.2.2008, 22:33 |
| Создал WIN32 C++ консольный проект в VS2003. Нужно к этому делу прикрутить модуль написанный на C. Добавил C файлы к проекту, но при линковании возникает проблема: external символы не линкуются ни из C++ в C ни в обратном направлении. Как слинковать? |
| Автор: nerdy_weirdie 29.2.2008, 04:15 |
| Разобрался.. да, ступил.. Странно, что никто не подсказал.. либо знающие настолько суровы? |
| Автор: JackYF 29.2.2008, 12:34 |
| extern "C" { // ..поехали } Неужели настолько поиск не помог? Проблема очень распространена. |
| Автор: nerdy_weirdie 29.2.2008, 13:55 | ||
С такими-то ключевыми словами гугл бесполезен |
| Автор: Mayk 29.2.2008, 15:15 |
не верно. http://www.google.ru/search?aq=f&complete=1&hl=ru&newwindow=1&q=linking+c+and+c%2B%2B&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr= ps. нашел с третьего захода. первые два запроса были "how to link c and c++" и "link c and c++" |
| Автор: nerdy_weirdie 1.3.2008, 15:55 |
| До чего дошел прогресс |
| Автор: nerdy_weirdie 17.3.2008, 04:58 |
| А может, кто подскажет, как слинковать 2 проекта в одном солюшне: В обоих используется CRT и при линковке возникают ошибки типа 1>MSVCRTD.lib(MSVCR80D.dll) : error LNK2005: _free already defined in libcmtd.lib(dbgheap.obj) 1>MSVCRTD.lib(MSVCR80D.dll) : error LNK2005: _strchr already defined in libcmtd.lib(strchr.obj) 1>MSVCRTD.lib(MSVCR80D.dll) : error LNK2005: _calloc already defined in libcmtd.lib(dbgheap.obj) 1>MSVCRTD.lib(MSVCR80D.dll) : error LNK2005: _strtol already defined in libcmtd.lib(strtol.obj) |