2013-04-24 2 views
2

Привет всем, я использую VC 2008 C++, и у меня есть проект, который не мой. Проект перестраивает успешно, но проблема в том, что проект не создает все .lib файлы, которые необходимы для другого проекта, и поэтому я получил:VC 2008 фатальная ошибка C1047 cplus fix?

1>------ Build started: Project: application_manager, Configuration: Release Win32 ------ 
1>Linking... 
1>LINK : warning LNK4224: /OPT:NOWIN98 is no longer supported; ignored 
1>fatal error C1047: The object or library file 'C:\Users\modestas\Desktop\代码\server\../contrib/lib/tinyxml/\tinyxml_stl.lib' was created with an older compiler than other objects; rebuild old objects and libraries 
1>LINK : fatal error LNK1257: code generation failed 
1>Build log was saved at "file://C:\Users\modestas\Desktop\代码\server\temp\application_manager\Release\BuildLog.htm" 
1>application_manager - 1 error(s), 1 warning(s) 
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 

этот проект уже tinyxml_stl.lib, но проект TinyXML Безразлично» t построить новый, так что я получил эту ошибку, как исправить эту ошибку?

+1

Получить более новую версию библиотеки? –

+0

В решении есть 16 проектов, два из которых не строят успешно. Тот, который не достраивает, не дает мне этой ошибки, проект, ответственный за сбор этих библиотек, строит только 4-5 из 6-7, из них ~ 2 - tinyxml_stl.lib. Я хочу, чтобы решение включало старое один lib, чтобы спроектировать и исправить эту ошибку (старый был создан, он уже был в папке). – karolis

+0

Я думаю о/LTCG, но я не знаю, как отключить его, и если я отключу его, это повредит проекту? – karolis

ответ

2

Ошибка вызвана tinyxml_stl.lib компилируется использует старую версию компилятора, чем вы используете, чтобы скомпилировать application_manager

Поскольку ваш tinylib проект больше не создает этот файл в качестве вывода я предполагаю, что это просто результат предыдущий разработчик оставляет вас с беспорядком файлов. Если вы изменили свой application_manager, чтобы ссылаться на правильные файлы, созданные tinyxml, и удалить ссылку на tinyxml_stl.lib, вы должны быть в состоянии скомпилировать.

+0

Да, но если я удалю ссылку на tinyxml_stl.lib, я действительно сомневаюсь, что я не получу никаких ошибок из кода, потому что файл lib используется для скрипта? Итак, что вы предлагаете? вернется на завтра. – karolis

+0

Ваш 'tinyxml_stl.lib', скорее всего, старый двоичный файл проекта tinyxml. Лучше всего удалить эту ссылку и ссылку на текущие двоичные файлы. Вы можете получить ошибки в своем коде, но вы сможете их исправить. Попытка взломать его, используя старый файл lib, скорее всего, вызовет проблемы позже. – MarkB42

+0

удалить ссылку, это сумасшествие, потому что я получил ~ 30 ошибок, sp hwat вы предлагаете удалить около ~ 14 функций и около ~ 20 строк кода, чтобы он работал. Я думаю, что это безумие, я подумаю об этом и попробую удача исправить, но я действительно сомневаюсь, что это лучший способ. Будут писать мои новости. – karolis

Смежные вопросы