![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
А сейчас что не так?
C:\msxslsrc>nmake.exe получаю: "mc" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. NMAKE: fatal error U1077: 'C:\windows\system32\cmd.exe: return code '0x1' Stop. |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Это означает, что в makefile'е для чего-то завется утилита mc. Что это за утилита и для чего завется я не в курсе. Насколько я помню, makefile там весьма не тривиальный, автор занимался уменьшением размера exe'ника (makefile'а сейчас под рукой нет, посмотреть не могу) Посмотрел - mc это Message Compiler. Должен быть в VS (у VS 2003 лежит в C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\Bin), убедись, что PATH туда смотрит. Это сообщение отредактировал(а) xvr - 18.12.2007, 21:20 |
|||
|
||||
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
у меня 2005-ая студия. Для mc.exe поправил переменную path. Потом тоже самое сделал для
cl.exe Сейчас ошибка такая: core.cxx: fatal error C1902: Program database manager mismatch; please check your installation |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Похоже на внутреннюю ошибку студии. Сотри все промежуточные файлы (особенно в директориях Debug & Release) и попробуй еще раз. |
|||
|
||||
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
сорри, какие промежуточные файлы?...у меня в сорсах нету никаких Debug и Release. В сорсах только код и ресурсы какие-то.
|
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Тогда посмотри нет ли в PATH других версий VS - очень похоже на несоотвествие версий внутренних тулзов VS. Кстати, попробуй запустить vcvars32.bat из Common?\Tools директории перед запуском nmake - он настраивает все переменные окружения, необходимые для работы с коммандной строки. Вообще makefile там заточен под VC 6.0 |
|||
|
||||
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
других версий нет и никогда не было.
vcvar32.bat запустил. Теперь такая ошибка: NMAKE : fatal error U1077 '"C:\Program files\Microsoft Visual Studio 2005\VC\bin\cl.EXE"' : return code '0x0000135' Stop. |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Обламалась компиляция, что ей надо по приведенным сообщениям непонятно :( Еще какие-нибудь сообщения (или лог файлы) были? |
|||
|
||||
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
не было. после запуска vcvar32.bat только такое сообщение и больше ничего.
|
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Что то у тебя с инсталяцией студии не то :( Взял VS 2003 (2005 нет, увы), распаковал сорцы, скопировал vsvars32.bat из студии и запустил с командной строки: vsvars32.bat & nmake - все откомпилилось, получен файл debug\msxsl.exe У тебя вообще cl.exe с коммандной строки нормально запускается? |
|||
|
||||
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
точно. такая команда:
C:\>cl.exe выдала ошибку - не удается найти mspdb80.dll. Нашел эту dll-ку, установил на нее переменную path. Теперь при запуске nmake ошибка такая: c:\msxslsrc\core.hxx(10) : fatal error C1034 : windows.h: no include path set nmake : fatal error U1077: C:\Program files\Microsoft Visual Studio 2005\VC\bin\cl.EXE"': return code '0x2' Stop. |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
vsvars32.bat должен устанавливать ВСЕ переменные окружения, необходимые для работы компилятора и пр. По всей видимости они не устанавливаются, или vsvars32.bat взят не оттуда, или установка VS 2005 кривая (например C++ не установлен, или Platform SDK не установлен, что врядли) |
|||
|
||||
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
c vsvars32.bat разобрался. Не сразу понял, что её просто нужно запускать из каталога с сорсами.
Блин, занудное это дело. Теперь ошибка такая: main.cxx(84) : error C2220: warning treated as error - no 'object' file generated main.cxx(84) : warning C4996: '_itow' was declared deprecated C:\Program files\Microsoft Visual Studio 2005\VC\include\stdlib.h(612) : see declaration of '_itow' Message : This function or variable may be unsafe. Consider using _itow_s instead. To disable deprecation? use _CRT_SECURE_NO_DEPRECATE. See online help for details. (и так не только в main.cxx но и во всех других, где используется _itow) ...сначала попробовал все вызовы _itow заменить на _itow_s. При этом компиляция нормально проходит, а вот при линковании ошибка - unresolved extarnal symbol : _itow_s А если во всех файлах где используется _itow определить макрос: #define _CRT_SECURE_NO_DEPRECATE ...то ничего не происходит - те же самые ошибки. что можно сделать? |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Не могу проверить - нет VS 2005 под рукой, но похоже, что этот дефайн _CRT_SECURE_NO_DEPRECATE надо задать в makefile'е (добавить в CFLAGS или CPPFLAGS -D=_CRT_SECURE_NO_DEPRECATE) |
|||
|
||||
zmejg |
|
|||
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 18.7.2007 Репутация: нет Всего: нет |
че-то никак...
в список флагов CXXFLAGS (CFLAGS - такого нету) добавил _CRT_SECURE_NO_DEPRECATE запускаю nmake: cl : Command line warning D9002 : ignoring unknown option '/_CRT_SECURE_NO_DEPRECATE' (кстати тот же самый варнинг получаю почти для всех остальных опций которые уже есть) а как узнать в каком .lib файле находится определение функции _itow_s? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |