jmpews / Dobby

a lightweight, multi-platform, multi-architecture hook framework.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

python3 scripts/platform_builder.py --platform=macos --arch=all

subu1979 opened this issue · comments

studio@Subramanyam Dobby % ls
CMakeLists.txt README_zh-cn.md cmake docs include tests
LICENSE build cmake-build-host examples scripts
README.md builtin-plugin common external source
studio@Subramanyam Dobby % python3 scripts/platform_builder.py --platform=macos --arch=all
/Users/studio/Desktop/obfuscation/Dobby/scripts/platform_builder.py:2: DeprecationWarning: 'pipes' is deprecated and slated for removal in Python 3.13
import pipes
2024-02-01 13:38:57,271 - INFO - project dir: /Users/studio/Desktop/obfuscation/Dobby
2024-02-01 13:38:57,271 - INFO - build platform: macos, archs: ['x86_64', 'arm64', 'arm64e']
2024-02-01 13:38:57,280 - INFO - build platform: macos, arch: x86_64, cmake_build_dir: /Users/studio/Desktop/obfuscation/Dobby/build/cmake-build-macos-x86_64, output_dir: /Users/studio/Desktop/obfuscation/Dobby/build/macos/x86_64
cmake -S /Users/studio/Desktop/obfuscation/Dobby -B /Users/studio/Desktop/obfuscation/Dobby/build/cmake-build-macos-x86_64 -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_SYSTEM_PROCESSOR=x86_64 -DCMAKE_SYSTEM_NAME=Darwin -DCMAKE_OSX_SYSROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk

-- ********* build environment check ***********
-- Compiler: Clang
-- Processor: x86_64
-- System: macOS
-- ***************************************

-- CMAKE_C_COMPILER: /usr/local/opt/llvm/bin/clang
-- CMAKE_CXX_COMPILER: /usr/local/opt/llvm/bin/clang++
-- CMAKE_C_FLAGS: -fvisibility=hidden -fPIC -fno-stack-check -fno-stack-protector -fno-exceptions -fno-rtti -fno-common -fno-zero-initialized-in-bss -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden
-- CMAKE_CXX_FLAGS: -fvisibility=hidden -fPIC -fno-stack-check -fno-stack-protector -fno-exceptions -fno-rtti -fno-common -fno-zero-initialized-in-bss -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden
-- CMAKE_SHARED_LINKER_FLAGS:
-- [Dobby] CMAKE_BUILD_TYPE: Release
-- [Dobby] DOBBY_DEBUG: OFF
-- [Dobby] NearBranch: ON
-- [Dobby] FullFloatingPointRegisterPack: OFF
-- [Dobby] Plugin.SymbolResolver: ON
-- [Dobby] Plugin.ImportTableReplace: OFF
-- [Dobby] Plugin.Android.BionicLinkerUtil: OFF
-- [Dobby] DOBBY_BUILD_EXAMPLE: OFF
-- [Dobby] DOBBY_BUILD_TEST: OFF
-- [Dobby] DOBBY_BUILD_KERNEL_MODE: OFF
-- [Dobby] Private.Obfuscation: OFF
-- [Dobby] Dobby-20240201-809f8ca
-- Configuring done (0.1s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/studio/Desktop/obfuscation/Dobby/build/cmake-build-macos-x86_64

-- ********* build environment check ***********
-- Compiler: Clang
-- Processor: x86_64
-- System: macOS
-- ***************************************

-- CMAKE_C_COMPILER: /usr/local/opt/llvm/bin/clang
-- CMAKE_CXX_COMPILER: /usr/local/opt/llvm/bin/clang++
-- CMAKE_C_FLAGS: -fvisibility=hidden -fPIC -fno-stack-check -fno-stack-protector -fno-exceptions -fno-rtti -fno-common -fno-zero-initialized-in-bss -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden
-- CMAKE_CXX_FLAGS: -fvisibility=hidden -fPIC -fno-stack-check -fno-stack-protector -fno-exceptions -fno-rtti -fno-common -fno-zero-initialized-in-bss -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden
-- CMAKE_SHARED_LINKER_FLAGS:
-- [Dobby] CMAKE_BUILD_TYPE: Release
-- [Dobby] DOBBY_DEBUG: OFF
-- [Dobby] NearBranch: ON
-- [Dobby] FullFloatingPointRegisterPack: OFF
-- [Dobby] Plugin.SymbolResolver: ON
-- [Dobby] Plugin.ImportTableReplace: OFF
-- [Dobby] Plugin.Android.BionicLinkerUtil: OFF
-- [Dobby] DOBBY_BUILD_EXAMPLE: OFF
-- [Dobby] DOBBY_BUILD_TEST: OFF
-- [Dobby] DOBBY_BUILD_KERNEL_MODE: OFF
-- [Dobby] Private.Obfuscation: OFF
-- [Dobby] Dobby-20240201-809f8ca
-- Configuring done (0.1s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/studio/Desktop/obfuscation/Dobby/build/cmake-build-macos-x86_64
[ 3%] Building CXX object CMakeFiles/dobby.dir/source/InstructionRelocation/arm64/InstructionRelocationARM64.cc.o
[ 3%] Building CXX object CMakeFiles/dobby.dir/source/InstructionRelocation/arm/InstructionRelocationARM.cc.o
[ 3%] Building CXX object CMakeFiles/dobby.dir/source/core/assembler/assembler-arm.cc.o
[ 13%] Building CXX object CMakeFiles/dobby.dir/source/core/assembler/assembler-ia32.cc.o
[ 13%] Building CXX object CMakeFiles/dobby.dir/source/core/codegen/codegen-arm.cc.o
[ 13%] Building CXX object CMakeFiles/dobby.dir/source/core/codegen/codegen-ia32.cc.o
[ 13%] Building CXX object CMakeFiles/dobby.dir/source/core/assembler/assembler-x64.cc.o
[ 16%] Building CXX object CMakeFiles/dobby.dir/source/core/codegen/codegen-x64.cc.o
[ 20%] Building CXX object CMakeFiles/dobby.dir/source/InstructionRelocation/x86/InstructionRelocationX86.cc.o
[ 23%] Building CXX object CMakeFiles/dobby.dir/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc.o
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/core/assembler/assembler-x64.cc:4:
/Users/studio/Desktop/obfuscation/Dobby/./source/core/assembler/assembler-x64.h:8:10: fatal error: 'MemoryAllocator/CodeBuffer/code_buffer_x64.h' file not found
8 | #include "MemoryAllocator/CodeBuffer/code_buffer_x64.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/core/codegen/codegen-x64.cc:4:
In file included from /Users/studio/Desktop/obfuscation/Dobby/./source/core/codegen/codegen-x64.h:6:
/Users/studio/Desktop/obfuscation/Dobby/./source/core/assembler/assembler-x64.h:8:10: fatal error: 'MemoryAllocator/CodeBuffer/code_buffer_x64.h' file not found
8 | #include "MemoryAllocator/CodeBuffer/code_buffer_x64.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [CMakeFiles/dobby.dir/source/core/assembler/assembler-x64.cc.o] Error 1
make[3]: *** Waiting for unfinished jobs....
[ 23%] Building CXX object CMakeFiles/dobby.dir/source/InstructionRelocation/x64/InstructionRelocationX64.cc.o
[ 30%] Building CXX object CMakeFiles/dobby.dir/source/InterceptRouting/InstrumentRouting/instrument_routing_handler.cpp.o
[ 30%] Building C object CMakeFiles/dobby.dir/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.c.o
[ 30%] Building CXX object CMakeFiles/dobby.dir/source/TrampolineBridge/Trampoline/trampoline_arm.cc.o
1 error generated.
make[3]: *** [CMakeFiles/dobby.dir/source/core/codegen/codegen-x64.cc.o] Error 1
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:7:
In file included from /Users/studio/Desktop/obfuscation/Dobby/./source/InstructionRelocation/x86/InstructionRelocationX86.h:9:
/Users/studio/Desktop/obfuscation/Dobby/./source/InstructionRelocation/x86/InstructionRelocationX86Shared.h:16:30: error: unknown type name 'CodeBufferBase'
16 | CodeBufferBase *code_buffer, x86_insn_decode_t &insn, int8_t mode);
| ^
/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:14:43: error: unknown type name 'CodeBufferBase'
14 | inline void codegen_x64_jmp_absolute_addr(CodeBufferBase *buffer, addr_t target) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:24:30: error: unknown type name 'CodeBufferBase'
24 | inline void emit_rel32_label(CodeBufferBase *buffer, uint32_t last_offset, addr_t curr_relo_ip, addr_t orig_dst_ip) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:33:30: error: unknown type name 'CodeBufferBase'
33 | CodeBufferBase *code_buffer, x86_insn_decode_t &insn, int8_t mode) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:92:66: error: no member named 'allocateNearExecMemory' in 'NearMemoryAllocator'
92 | auto rip_insn_seq = (addr_t)NearMemoryAllocator::Shared()->allocateNearExecMemory(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:107:34: error: use of undeclared identifier 'CodeBufferBase'
107 | auto rip_insn_seq_buffer = CodeBufferBase();
| ^
/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:200:19: error: reference to non-static member function must be called; did you mean to call it with no arguments?
200 | if (!relocated->addr) {
| ~~~~~~~~~~~^~~~
| ()
/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc:201:43: error: no member named 'SharedAllocator' in 'MemoryAllocator'
201 | auto relocated_mem = MemoryAllocator::SharedAllocator()->allocateExecMemory(expected_relocated_mem_size);
| ~~~~~~~~~~~~~~~~~^
8 errors generated.
make[3]: *** [CMakeFiles/dobby.dir/source/InstructionRelocation/x86/InstructionRelocationX86Shared.cc.o] Error 1
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.c:4:
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.h:5:
In file included from /Users/studio/Desktop/obfuscation/Dobby/./source/dobby/common.h:12:
In file included from /Users/studio/Desktop/obfuscation/Dobby/./common/os_arch_features.h:5:
/Users/studio/Desktop/obfuscation/Dobby/./common/pac_kit.h:11:1: error: unknown type name 'template'
11 | template static inline T pac_strip(T &addr, bool keep = false) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./common/pac_kit.h:11:10: error: expected identifier or '('
11 | template static inline T pac_strip(T &addr, bool keep = false) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./common/pac_kit.h:26:1: error: unknown type name 'template'
26 | template static inline T pac_sign(T &addr, bool keep = false) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./common/pac_kit.h:26:10: error: expected identifier or '('
26 | template static inline T pac_sign(T &addr, bool keep = false) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./common/pac_kit.h:41:1: error: unknown type name 'template'
41 | template static inline T pac_strip_and_sign(T &addr) {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./common/pac_kit.h:41:10: error: expected identifier or '('
41 | template static inline T pac_strip_and_sign(T &addr) {
| ^
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.c:4:
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.h:5:
In file included from /Users/studio/Desktop/obfuscation/Dobby/./source/dobby/common.h:12:
In file included from /Users/studio/Desktop/obfuscation/Dobby/./common/os_arch_features.h:7:
/Users/studio/Desktop/obfuscation/Dobby/./source/PlatformUnifiedInterface/platform.h:5:1: error: unknown type name 'namespace'
5 | namespace base {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./source/PlatformUnifiedInterface/platform.h:5:15: error: expected ';' after top level declarator
5 | namespace base {
| ^
| ;
/Users/studio/Desktop/obfuscation/Dobby/./source/PlatformUnifiedInterface/platform.h:53:17: error: expected identifier or '('
53 | struct OSThread : base::ThreadInterface, base::ThreadInterface::Delegate {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./source/PlatformUnifiedInterface/platform.h:71:1: error: unknown type name 'class'
71 | class OSMemory {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./source/PlatformUnifiedInterface/platform.h:71:15: error: expected ';' after top level declarator
71 | class OSMemory {
| ^
| ;
/Users/studio/Desktop/obfuscation/Dobby/./source/PlatformUnifiedInterface/platform.h:86:1: error: unknown type name 'class'
86 | class OSPrint {
| ^
/Users/studio/Desktop/obfuscation/Dobby/./source/PlatformUnifiedInterface/platform.h:86:14: error: expected ';' after top level declarator
86 | class OSPrint {
| ^
| ;
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x64/InstructionRelocationX64.ccIn file included from :/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.c7::
4In file included from :
/Users/studio/Desktop/obfuscation/Dobby/./source/InstructionRelocation/x64/InstructionRelocationX64.hIn file included from :/Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.h9::
5:
In file included from /Users/studio/Desktop/obfuscation/Dobby/./source/dobby/common.h:12/Users/studio/Desktop/obfuscation/Dobby/./source/InstructionRelocation/x86/InstructionRelocationX86Shared.h:
:16/Users/studio/Desktop/obfuscation/Dobby/./common/os_arch_features.h::3013:: 1: error: error: unknown type name 'CodeBufferBase'unknown type name 'namespace'

13 | namespace f 16 | e a t u r e s {
| ^
CodeBufferBase *code_buffer, x86_insn_decode_t &insn, int8_t mode);
| ^
/Users/studio/Desktop/obfuscation/Dobby/./common/os_arch_features.h:13:19: error: expected ';' after top level declarator
13 | namespace features {
| ^
| ;
In file included from /Users/studio/Desktop/obfuscation/Dobby/source/InstructionRelocation/x64/InstructionRelocationX64.cc:11:
/Users/studio/Desktop/obfuscation/Dobby/./source/core/assembler/assembler-x64.h:8:10: fatal error: 'MemoryAllocator/CodeBuffer/code_buffer_x64.h' file not found
8 | #include "MemoryAllocator/CodeBuffer/code_buffer_x64.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
make[3]: *** [CMakeFiles/dobby.dir/source/InstructionRelocation/x64/InstructionRelocationX64.cc.o] Error 1
15 errors generated.
make[3]: *** [CMakeFiles/dobby.dir/source/InstructionRelocation/x86/x86_insn_decode/x86_insn_decode.c.o] Error 1
make[2]: *** [CMakeFiles/dobby.dir/all] Error 2
make[1]: *** [CMakeFiles/dobby.dir/rule] Error 2
make: *** [dobby] Error 2
Traceback (most recent call last):
File "/Users/studio/Desktop/obfuscation/Dobby/scripts/platform_builder.py", line 243, in
builder.build()
File "/Users/studio/Desktop/obfuscation/Dobby/scripts/platform_builder.py", line 75, in build
subprocess.run("cmake --build . --clean-first --target dobby --target dobby_static -- -j8", cwd=self.cmake_build_dir, shell=True, check=True)
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/subprocess.py", line 571, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command 'cmake --build . --clean-first --target dobby --target dobby_static -- -j8' returned non-zero exit status 2.
studio@Subramanyam Dobby %

get a tons if error as well. it's impossible to compile for non-authors.

yes,it's has many error,i'm try to build by document but it fail