Перейти к содержанию
MasterGH

Компиляция CE (выше версии 6.0)

Получилось ли у вас скомпилировать CE?  

15 проголосовавших

  1. 1. Получилось ли у вас скомпилировать CE?



Рекомендуемые сообщения

Для компиляции CE 6.0 и выше выполните следующие шаги.

1. Этап - скачайте исходники CE.

Исходники можно скачать одним файлом с сайта CE, а можно и через SVN. В последнем случае вы получаете последние обновления. И этот вариант намного предпочтительнее.

Найдите и установите программу TortoiseSVN.

Скачайте с её помощью исходники CE по ссылке: http://ce.colddot.nl/svn/Cheat Engine 6

2. Этап - установка Free Pascal Compiler и Lazarus IDE.

Самый простой способ это скачать на данный момент сайта снапшотов:

- Для 32- разрядных версий:

"Lazarus + fpc 2.4.2 win32 Lazarus-0.9.31-29498-fpc-2.4.2-20110213-win32.exe" с.

- Для 64- разрядных:

Lazarus + fpc 2.4.2 win64 Lazarus-0.9.31-29498-fpc-2.4.2-20110213-win64.exe

К сожалению, я пока попробовал только первый вариант, т.к. я имею доступ только к 32-разрядной винде.

3. Этап - компиляция (проверка)

Откройте проект в Лазаре из SVN и нажмите на плей. Если всё "ОК", то без проблем увидите скомпилированное окное CE.

4. Этап - автокомпиляция всех проектов.

Автор mgr.inz.Player:

Hi, just made simple script. It searches lazarus path, changes build mode to "release" (alters cheatengine.lpi file).

Then it builds this projects: CheatEngine, allochook, launcher, speedhack, tutorial, vehdebug)

Personally, I have this script inside \autobuild directory, placed inside "CheatEngine 6" directory (downloaded via TortoiseSVN).

Tested on few Lazarus 32 bit versions, OS WinXP Pro SP3 and Windows7 64bit.

Создайте файл autobuild.cmd c содержимым, поместите в папку в которую автор указал и выполните его:


setlocal ENABLEDELAYEDEXPANSION
if not exist cheatengine.lpr cd ..

rem searching LAZARUS path
regedit /a %temp%\lazarusuninstallkey.txt HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Lazarus_is1
for /F "delims=" %%i in (%temp%\lazarusuninstallkey.txt) do (
set lazpath=%%i
if a"InstallLocation" == a"!lazpath:~1,15!" (
set lazpath=!lazpath:~19,-1!
set lazpath=!lazpath:\\=\!
set prog="!lazpath!lazbuild.exe"
goto continue1
)
)
echo Lazarus path not found.
goto theend
:continue1
echo Lazarus path: %lazpath%

rmdir /s /q "allochook\lib" 2>nul
del /f /q "bin\allochook-i386.dll" 2>nul
del /f /q "bin\Cheat Engine.exe" 2>nul
del /f /q "bin\cheatengine-i386.exe" 2>nul
del /f /q "bin\kernelmoduleunloader-i386.exe" 2>nul
del /f /q "bin\speedhack-i386.dll" 2>nul
del /f /q "bin\tutorial-i386.exe" 2>nul
del /f /q "bin\vehdebug-i386.dll" 2>nul
del /f /q "dbk32\Kernelmodule unloader\Kernelmoduleunloader.compiled" 2>nul
del /f /q "launcher\cheatengine.res" 2>nul
rmdir /s /q "launcher\lib" 2>nul
rmdir /s /q "lib" 2>nul
del /f /q "speedhack\unitbin\speedhack.compiled" 2>nul
del /f /q "speedhack\unitbin\speedhack.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.ppu" 2>nul
rmdir /s /q "Tutorial\unitbin" 2>nul
rmdir /s /q "VEHDebug\lib" 2>nul

rem be sure to get buildmode = release
del ce.lpi 2>nul
for /F "delims=" %%i in (cheatengine.lpi) do (
set line=%%i
if a" <BuildModes" == a"!line:~0,15!" (
set line=!line:debug-nomt=release!
set line=!line:debug=release!
)
echo !line!>> ce.lpi
)
del cheatengine.lpi
move ce.lpi cheatengine.lpi > nul

rem
rem Build
rem

%prog% cheatengine.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "CheatEngine" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% allochook\allochook.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "allochook" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% launcher\cheatengine.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "launcher" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% speedhack\speedhack.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "speedhack" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% Tutorial\tutorial.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "tutorial" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% VEHDebug\vehdebug.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "vehdebug" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% "dbk32\Kernelmodule unloader\Kernelmoduleunloader.lpr" > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "Kernelmoduleunloader" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt
del /f /q bin\ic.res 2>nul
del /f /q bin\manifest.res 2>nul
del /f /q bin\Kernelmoduleunloader.o 2>nul
del /f /q bin\multicpuexecution.o 2>nul
del /f /q bin\Kernelmoduleunloader.or 2>nul
del /f /q bin\multicpuexecution.ppu 2>nul

rmdir /s /q "allochook\lib" 2>nul
del /f /q "dbk32\Kernelmodule unloader\Kernelmoduleunloader.compiled" 2>nul
del /f /q "launcher\cheatengine.res" 2>nul
rmdir /s /q "launcher\lib" 2>nul
rmdir /s /q "lib" 2>nul
del /f /q "speedhack\unitbin\speedhack.compiled" 2>nul
del /f /q "speedhack\unitbin\speedhack.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.ppu" 2>nul
rmdir /s /q "Tutorial\unitbin" 2>nul
rmdir /s /q "VEHDebug\lib" 2>nul

:theend
pause
goto EOF
@echo off

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проверил в 64-битной Windows 7 - не скомпилировалось, вывалилось две ошибки:

multicpuexecution.pas(39,49) Error: Call by var for arg no. 3 has to match exactly: Got "QWord" expected "LongWord"
multicpuexecution.pas(70,49) Error: Call by var for arg no. 3 has to match exactly: Got "QWord" expected "LongWord"
multicpuexecution.pas(85) Fatal: There were 2 errors compiling module, stopping

Всё, собрал. ДаркБайт писал об этом глюке, это вроде как глюк fpc. Нужно изменить строки вида "PA,SA: DWORD_PTR;" на "PA,SA: DWORD;"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для компиляции CE 6.0 и выше выполните следующие шаги.

1. Этап - скачайте исходники CE.

Исходники можно скачать одним файлом с сайта CE, а можно и через SVN. В последнем случае вы получаете последние обновления. И этот вариант намного предпочтительнее.

Найдите и установите программу TortoiseSVN.

Скачайте с её помощью исходники CE по ссылке: http://ce.colddot.nl/svn/Cheat Engine 6

2. Этап - установка Free Pascal Compiler и Lazarus IDE.

Самый простой способ это скачать на данный момент сайта снапшотов:

- Для 32- разрядных версий:

"Lazarus + fpc 2.4.2 win32 Lazarus-0.9.31-29498-fpc-2.4.2-20110213-win32.exe" с.

- Для 64- разрядных:

Lazarus + fpc 2.4.2 win64 Lazarus-0.9.31-29498-fpc-2.4.2-20110213-win64.exe

К сожалению, я пока попробовал только первый вариант, т.к. я имею доступ только к 32-разрядной винде.

3. Этап - компиляция (проверка)

Откройте проект в Лазаре из SVN и нажмите на плей. Если всё "ОК", то без проблем увидите скомпилированное окное CE.

4. Этап - автокомпиляция всех проектов.

Автор mgr.inz.Player:

Создайте файл autobuild.cmd c содержимым, поместите в папку в которую автор указал и выполните его:


setlocal ENABLEDELAYEDEXPANSION
if not exist cheatengine.lpr cd ..

rem searching LAZARUS path
regedit /a %temp%\lazarusuninstallkey.txt HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Lazarus_is1
for /F "delims=" %%i in (%temp%\lazarusuninstallkey.txt) do (
set lazpath=%%i
if a"InstallLocation" == a"!lazpath:~1,15!" (
set lazpath=!lazpath:~19,-1!
set lazpath=!lazpath:\\=\!
set prog="!lazpath!lazbuild.exe"
goto continue1
)
)
echo Lazarus path not found.
goto theend
:continue1
echo Lazarus path: %lazpath%

rmdir /s /q "allochook\lib" 2>nul
del /f /q "bin\allochook-i386.dll" 2>nul
del /f /q "bin\Cheat Engine.exe" 2>nul
del /f /q "bin\cheatengine-i386.exe" 2>nul
del /f /q "bin\kernelmoduleunloader-i386.exe" 2>nul
del /f /q "bin\speedhack-i386.dll" 2>nul
del /f /q "bin\tutorial-i386.exe" 2>nul
del /f /q "bin\vehdebug-i386.dll" 2>nul
del /f /q "dbk32\Kernelmodule unloader\Kernelmoduleunloader.compiled" 2>nul
del /f /q "launcher\cheatengine.res" 2>nul
rmdir /s /q "launcher\lib" 2>nul
rmdir /s /q "lib" 2>nul
del /f /q "speedhack\unitbin\speedhack.compiled" 2>nul
del /f /q "speedhack\unitbin\speedhack.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.ppu" 2>nul
rmdir /s /q "Tutorial\unitbin" 2>nul
rmdir /s /q "VEHDebug\lib" 2>nul

rem be sure to get buildmode = release
del ce.lpi 2>nul
for /F "delims=" %%i in (cheatengine.lpi) do (
set line=%%i
if a" <BuildModes" == a"!line:~0,15!" (
set line=!line:debug-nomt=release!
set line=!line:debug=release!
)
echo !line!>> ce.lpi
)
del cheatengine.lpi
move ce.lpi cheatengine.lpi > nul

rem
rem Build
rem

%prog% cheatengine.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "CheatEngine" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% allochook\allochook.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "allochook" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% launcher\cheatengine.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "launcher" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% speedhack\speedhack.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "speedhack" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% Tutorial\tutorial.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "tutorial" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% VEHDebug\vehdebug.lpr > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "vehdebug" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt

%prog% "dbk32\Kernelmodule unloader\Kernelmoduleunloader.lpr" > %temp%\lazarusCE6BuildLog.txt
if %errorlevel% == 0 ( ECHO. & echo Project "Kernelmoduleunloader" successfully built & ECHO.) else type %temp%\lazarusCE6BuildLog.txt
del /f /q bin\ic.res 2>nul
del /f /q bin\manifest.res 2>nul
del /f /q bin\Kernelmoduleunloader.o 2>nul
del /f /q bin\multicpuexecution.o 2>nul
del /f /q bin\Kernelmoduleunloader.or 2>nul
del /f /q bin\multicpuexecution.ppu 2>nul

rmdir /s /q "allochook\lib" 2>nul
del /f /q "dbk32\Kernelmodule unloader\Kernelmoduleunloader.compiled" 2>nul
del /f /q "launcher\cheatengine.res" 2>nul
rmdir /s /q "launcher\lib" 2>nul
rmdir /s /q "lib" 2>nul
del /f /q "speedhack\unitbin\speedhack.compiled" 2>nul
del /f /q "speedhack\unitbin\speedhack.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.o" 2>nul
del /f /q "speedhack\unitbin\speedhackmain.ppu" 2>nul
rmdir /s /q "Tutorial\unitbin" 2>nul
rmdir /s /q "VEHDebug\lib" 2>nul

:theend
pause
goto EOF
@echo off

Извиняюсь за флуд, но спасибо огромное! Ты не подскажешь как изменить имена dll lua5.1-32.dll и lua5.1-64.dll и чтоб программа их загружала без ошибки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По идее надо в IDE Lazarus искать ссылки на эти либы и менять названия.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По идее надо в IDE Lazarus искать ссылки на эти либы и менять названия.

Благодарю,все получилось.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

После 934-ой ревизии комплект SDK переехал по этому адресу.

http://cheat-engine.googlecode.com/svn/trunk

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день! Вылазит ошибка при компиляции. Что делать?

274ab9942d9dt.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Распаковывай на диск C

https://dl.dropboxusercontent.com/u/50323360/misc/development.rar

 

И CE будет норм компилится

Изменено пользователем SER[G]ANT

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все 5 программ самой последней версии в одном архиве ссылка  http://my-files.ru/9ya4c1

Free Pascal Compiler x32-x64 и Lazarus IDE x32-x64 TortoiseSVN x32-x64

Изменено пользователем Baracuda

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Lazarus выдаёт 2 ошибки при компиляции как это исправить 

 

Lazarus при компиляции выдаёт ошибку Предупреждение: каталог lcl не найден

 

Lazarus Отладчик Файл: C:\Users\Silicon Valley\Desktop\cheat-engine-6.4\mingw\x86_64-win64\bin\gdb.exe

Ошибка: файл не найден

Изменено пользователем Baracuda

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вот еще чалая куча, https://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2064%20bits/ пробовать надо все, что бы узнать как я рабочая. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Последняя офф. версия нормально всё компилирует https://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2064%20bits/Lazarus%201.6/lazarus-1.6.0-fpc-3.0.0-win64.exe/download

Просто конфиг у вас настроен не правильно.

Тот же gdb.exe находиться в папке lazarus\mingw\x86_64-win64\bin

А у вас, видимо, все пути ведут в исходники CE

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

почему размер файла получается 100 мегабайт, у cheatengine-x86_64 как правильно настроить, чтобы такого размера не было. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проект-Параметры проекта-Параметры компилятора.

Выбираешь режим сборки Release 64-Bit или 32-Bit

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот собрал как надо, теперь собирает Cheat Engine без ошибок, проверил на Cheat Engine v 6.6 Beta 1 собрало без ошибок.

1 - Устанавливайте программу lazarus-1.6.0-fpc-3.0.0-win32

2 - Устанавливаете программу lazarus-1.6.0-fpc-3.0.0-cross-x86_64-win64-win32 в туже папку что и lazarus-1.6.0-fpc-3.0.0-win32

3 - Копируете файл lcl с заменой в папку lazarus где у вас установлена программа 

4 - Всё и можете приступать к сборке Cheat Engine 

Скачать https://yadi.sk/d/tKOuYSB6vEAEE [Lazzarus ver 1.6.0-fpc-3.0.0] + lcl [+ Исходный Код cheat-engine ver 6.6 Beta 1]

 

Исходный код https://github.com/cheat-engine/cheat-engine

Изменено пользователем Baracuda

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Исходный код Cheat Engine и файл lcl брал сайта http://forum.cheatengine.org/index.php

Официальный сайт программы lazzarus http://www.lazarus-ide.org

скачать программу, можно тут lazzarus https://sourceforge.net/projects/lazarus/files/

Изменено пользователем Baracuda

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Baracuda сказал:

Вот собрал как надо, теперь собирает Cheat Engine

:offtopic: Baracuda - ты собирал уже правленые СЕ ? если да - может поделишься файлами :-[ Я имею введу уже скомпилиными (если конечно они правленые) а чистые не надо :) Просто и так в компе мусору куча после игр.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как из править ошибку при компиляции,я скачал исходный код Cheat Engine Ver 6.7 не чего в нём не менял, просто решил собрать. но выдаёт ошибку. 

Такую же ошибку выдаёт и если редактировал файл от де-компилятора, ну деле защиту. Так же не собирает Lazarus который сделал Дарк байт, он тоже выдаёт ошибку при сборки.Версию Lazarus я из пользовал Ver 1.6

 

Изменено пользователем Submarina

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Из за этой ошибки, не работает DBVM, а если быть точней я думаю не из за этой ошибки. A из за того что он не собран правильно, и до конца файл cheatengine-x86_64.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скачай lazarus-1.6.4-fpc-3.0.2-win64.exe c офсайта лазаруса, он нормально компилирует (1.6 хоть и не выдавал у меня такой ошибки, но тоже компилировать перестал)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет SER[G]ANT, да я устанавливал и версию lazarus-1.6.4-fpc-3.0.2-win64.exe ошибок вроде не выдавало, но в конце когда всё упаковало, вылезло окно что мол Cheat Engine не может запустится от того что, не хватает информации вроде так как то. Но ошибок отладчика при сборке не выдавало, это хорошо. Но проблемам осталось отладчик DBVM, при запуске всё ровно выдаёт ошибку, и не запускает драйвер попробуй проверь сам.

Изменено пользователем Submarina

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
53 минуты назад, Submarina сказал:

да я устанавливал и версию lazarus-1.6.4-fpc-3.0.2-win64.exe

@Submarina, ты до сих пор паришься защитой СЕ-ных трейнеров?

Мне кажется, смысла воровать чужие скрипты нет, всё и так по-моему есть в паблик, на подобных форумах. как наш. Так что сомневаюсь, что кто-то занимается воровством.

Но, если ты хочешь именно защитить, думаю проще перейти на какой-нибудь язык (например С++) думаю будет, гораздо результативней, чем городить всякие "костыли".  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я разве написал что я защиту делаю, НЕТ. хотелось бы ошибку при сборке устранить, что бы отладчик DBVM работал корректно.

Некоторые игры, при запуске Cheat Engine не запускаются,из за встроенного в игру защиту. для того что бы это устранит Cheat Engine нужно пере собрать по новой.

Изменено пользователем Submarina

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, Submarina сказал:

что бы отладчик DBVM работал корректно.

Он на твоей системе работает?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

×

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.