И должен ли я иметь одинаковую настройку во всех config.h
файлах в проекте?
Симптом: nmake
при попытке построить части проекта в MSV C выдает «Командная строка» inconsistent dll linkage vsnprintf
. Поиск в этом сообщении говорит, что обычно это связано с тем, что макросы не работают последовательно. Я создаю пакет, который предположительно работает; Я не изменил дистрибутив.
Эти две процедуры Microsoft задокументированы здесь . В config.h
файлах * есть флаги
/* Define to 1 if you have the `vsnprintf' function. */
/* #undef HAVE_VSNPRINTF */
...
/* Define to 1 if you have the `_vsnprintf' function. */
#define HAVE__VSNPRINTF 1
Некоторые, но не все config.h
файлы генерируются из config.h.in
/ configure.ac
при установке пакета. Кажется, у меня есть разные настройки для HAVE_VSNPRINTF
в разных config.h
s в разных поддеревьях проекта. Я не хочу отменять дистрибутив, но это не так (?)
vsnprintf
в MSVCRnnn.DLL
, где nnn
- выпуск MSV C; Я установил v12.0 / Обновление 5 сообщества. Почему такая старая версия? ...
Справочная информация
Я пытаюсь построить древнюю версию компилятора Haskell Hugs, сентябрь 2006 г. В основном это написано для Unix среды в C / C ++. Но я опираюсь на Windows 8.1, процессор на базе x64. Следующие инструкции: здесь ; и это хранилище содержит всю структуру каталогов, которую я создаю (спасибо Франклин Чен).
Ориентированная на Unix часть, которую я создал, используя MinGW / MSYS, а не Cygwin. (64-битный MinGW не go хорошо, поэтому я вернулся и использовал 32-битный.)
Теперь я пытаюсь построить деталь Windows, которая по сути является фанерой GUI поверх Unix - начиная с «Использование Microsoft Visual C ++» в инструкциях. Visual Studio был совершенно не доволен: файлы проекта .vcproj
больше не поддерживаются. Я пытался devenv /Upgrade
получить их как .vcxproj
. Но затем возникают дальнейшие проблемы с попыткой MSBuild
, которую он не может проверить по .xsd
; либо Microsoft.Build.{Core|Common}.xsd
дал много отказов по поводу пропущенных типов. Поэтому я отказался от этого подхода.
Поэтому я следую инструкциям «Запуск Microsoft Visual C ++ из командной строки», используя файл .bat
с поддержкой MSV C для запуска командной строки. как здесь doco . nmake
запущен, но выбрасывает кучу предупреждений inconsistent dll
, только для vsnprintf
. Я также получаю differs in parameter lists
за различные процедуры; это ошибка при включении? В конце концов nmake
вылетает, без сборки .exe
s, я хочу.