Предупреждение компоновщика при использовании stdscr (ncurses)
Итак, я получаю эти предупреждения всякий раз, когда пытаюсь использовать stdscr в pdcurses:
LINK : warning LNK4098: defaultlib "LIBC" conflicts with use of other libs; use /NODEFAULTLIB:library
LINK : warning LNK4049: locally defined symbol "_stdscr" imported
LINK : warning LNK4049: locally defined symbol "_SP" imported
Как это исправить? Это всего лишь предупреждения, но когда я запускаю свою программу, она падает, поэтому они, вероятно, как-то связаны с ней. Особенно учитывая тот факт, что строка, в которой происходит сбой, использует stdscr...
1 ответ
Обычно вы видите это в MSVC, когда у вас есть программа, вызывающая библиотеки, построенные по другой модели RTL.
Посмотрите в ваших "опциях компилятора", возможно, в разделе "генерация кода". Вы должны быть в состоянии найти настройки библиотеки времени выполнения.
Это может говорить о отладке / многопоточности / сингле...
Убедитесь, что настройки библиотеки времени выполнения для вашей программы совпадают с настройками всех библиотек. Это должно позаботиться о проблеме.
Что касается сбоя, я рекомендую найти образец программы для pdcurses онлайн. В теории это должно компилироваться и функционировать правильно. Используйте это в качестве основы для исправления настроек библиотеки, а затем измените ее в нужную форму.