![]() |
Здравствуйте возникла такая вот проблема при компиляции (VS2010) исходника от FYP (не редактировался). Помогите кто чем может, буду вечно благодарен!
1>------ Построение начато: проект: mod_sa, Конфигурация: Release Win32 ------ 1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuil d.targets(990,5): warning MSB8012: TargetPath(C:\Users\admin\Desktop\mod_s0beit_sa-1\src\Release\d3d9.dll) не соответствует значению свойства выходного файла (C:\Users\admin\Desktop\mod_s0beit_sa-1\bin\d3d9.dll) для Linker. Это может привести к неправильному построению проекта. Чтобы исправить это, убедитесь, что значения свойств $(OutDir), $(TargetName) и $(TargetExt) соответствуют значению, указанному в %(Link.OutputFile). 1> Создается библиотека C:\Users\admin\Desktop\mod_s0beit_sa-1\src\Release\mod_sa_proxy.lib и объект C:\Users\admin\Desktop\mod_s0beit_sa-1\src\Release\mod_sa_proxy.exp 1>LINK : fatal error LNK1123: сбой при преобразовании в COFF: файл недопустим или поврежден ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ========== |
Проект->свойства, там проверь выходной каталог, промежуточный каталог, имя целевого объекта. Вроде про это он тебя просит, а вообще на*** 2010 юзать? уже 2015 есть
|
Я просто не понимаю что туда надо добавить.
Выходной каталог: $(SolutionDir)$(Configuration)\ Промежуточный каталог: $(SolutionDir)\obj\$(Configuration)\ Конечное имя: d3d9 |
Цитата:
|
Цитата:
|
Вот компилировал в VS2015 исходник VS2010 выдаёт ошибку.
1>c:\users\admin\desktop\mod_s0beit_sa-3\src\cheat_funcs.h(468): error C2589: bool: недопустимая лексема справа от "::" 1>c:\users\admin\desktop\mod_s0beit_sa-3\src\cheat_funcs.h(468): error C2059: синтаксическая ошибка: :: 1>c:\users\admin\desktop\mod_s0beit_sa-3\src\cheat_funcs.h(468): error C2059: синтаксическая ошибка: ) 1>c:\users\admin\desktop\mod_s0beit_sa-3\src\cheat_funcs.h(468): error C2143: синтаксическая ошибка: отсутствие ")" перед ";" |
Теперь откомпилировал заного и дало вот эти ошибки:
1>cheat_actor.cpp(137): error C3499: заданное лямбда-выражение с возвращаемым типом void не может возвращать значение 1>cheat_actor.cpp(144): error C3499: заданное лямбда-выражение с возвращаемым типом void не может возвращать значение Вот код: if (nearest_id == -1) { nearest_id = actor_find_nearest_ex(ACTOR_ALIVE, [pCam](actor_info *ainfo) { CVector src = pCam->Source; CPed *ped = pGame->GetPools()->GetPed((DWORD *)ainfo); if (ped == nullptr) (Ошибка) - return false; // get the head position CVector head; ped->GetTransformedBonePosition(BONE_HEAD, &head); // check is head in sight (Ошибка) - return pGame->GetWorld()->IsLineOfSightClear(&src, &head, true, false, false, true, true, false, false); }); } |
Цитата:
|
Цитата:
Вот строчка: return pGame->GetWorld()->IsLineOfSightClear(&src, &head, true, false, false, true, true, false, false); |
C++:
Код:
ifвидимо в новом стандарте требуется явное определение возвращаемого типа для лямбда-выражений. странно. |
| Время: 23:55 |