worawit / blutter

Flutter Mobile Application Reverse Engineering Tool
MIT License
752 stars 128 forks source link

无法解析,也更新过了 #63

Open FANYbg opened 1 month ago

FANYbg commented 1 month ago

root㉿r0env)-[~/Desktop/blutter-main] └─# python ./blutter.py arm64-v8a/ ./out_app --rebuild
Dart version: 3.3.4, Snapshot: ee1eb666c76a5cb7746faf39d0b97547, Target: android arm64 flags: product no-code_comments no-dwarf_stack_traces_mode no-lazy_dispatchers dedup_instructions no-tsan no-asserts arm64 android compressed-pointers null-safety -- Configuring done (0.0s) -- Generating done (0.0s) -- Build files have been written to: /root/Desktop/blutter-main/build/blutter_dartvm3.3.4_android_arm64 [1/1] Linking CXX executable blutter_dartvm3.3.4_android_arm64 FAILED: blutter_dartvm3.3.4_android_arm64 : && /usr/bin/c++ -O3 -DNDEBUG CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/CodeAnalyzer.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartApp.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartClass.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartDumper.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartField.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartFunction.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartLibrary.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartLoader.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartStub.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartThreadInfo.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/DartTypes.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/Disassembler.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/Disassembler_arm64.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/ElfHelper.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/FridaWriter.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/Util.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/VarValue.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/il.cpp.o CMakeFiles/blutter_dartvm3.3.4_android_arm64.dir/src/main.cpp.o -o blutter_dartvm3.3.4_android_arm64 /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a -lcapstone -ldl -lpthread /usr/lib/x86_64-linux-gnu/libicuuc.so && : /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp_assembler.cc.o): in function CaseInsensitiveCompareUTF16': regexp_assembler.cc:(.text.CaseInsensitiveCompareUTF16+0xc1): undefined reference tou_foldCase_71' /usr/bin/ld: regexp_assembler.cc:(.text.CaseInsensitiveCompareUTF16+0xce): undefined reference to u_foldCase_71' /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp.cc.o): in functiondart::AddUnicodeCaseEquivalents(dart::ZoneGrowableArray)': regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x38): undefined reference to icu_71::UnicodeSet::UnicodeSet()' /usr/bin/ld: regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x5d): undefined reference toicu_71::UnicodeSet::add(int, int)' /usr/bin/ld: regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x82): undefined reference to icu_71::UnicodeSet::closeOver(int)' /usr/bin/ld: regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x8a): undefined reference toicu_71::UnicodeSet::removeAllStrings()' /usr/bin/ld: regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0xa3): undefined reference to icu_71::UnicodeSet::getRangeCount() const' /usr/bin/ld: regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0xb5): undefined reference toicu_71::UnicodeSet::getRangeEnd(int) const' /usr/bin/ld: regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0xc2): undefined reference to icu_71::UnicodeSet::getRangeStart(int) const' /usr/bin/ld: regexp.cc:(.text._ZN4dart25AddUnicodeCaseEquivalentsEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x1ec): undefined reference toicu_71::UnicodeSet::~UnicodeSet()' /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp_parser.cc.o): in function dart::RegExpParser::ParseCaptureGroupName()': regexp_parser.cc:(.text._ZN4dart12RegExpParser21ParseCaptureGroupNameEv+0x159): undefined reference tou_hasBinaryProperty_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12RegExpParser21ParseCaptureGroupNameEv+0x1e9): undefined reference to u_hasBinaryProperty_71' /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp_parser.cc.o): in functiondart::RegExpBuilder::AddTrailSurrogate(unsigned short)': regexp_parser.cc:(.text._ZN4dart13RegExpBuilder17AddTrailSurrogateEt+0x21b): undefined reference to icu_71::UnicodeSet::UnicodeSet(int, int)' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder17AddTrailSurrogateEt+0x228): undefined reference toicu_71::UnicodeSet::closeOver(int)' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder17AddTrailSurrogateEt+0x230): undefined reference to icu_71::UnicodeSet::removeAllStrings()' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder17AddTrailSurrogateEt+0x238): undefined reference toicu_71::UnicodeSet::size() const' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder17AddTrailSurrogateEt+0x242): undefined reference to icu_71::UnicodeSet::~UnicodeSet()' /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp_parser.cc.o): in functiondart::RegExpBuilder::NeedsDesugaringForIgnoreCase(unsigned int)': regexp_parser.cc:(.text._ZN4dart13RegExpBuilder28NeedsDesugaringForIgnoreCaseEj+0x3d): undefined reference to icu_71::UnicodeSet::UnicodeSet(int, int)' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder28NeedsDesugaringForIgnoreCaseEj+0x4a): undefined reference toicu_71::UnicodeSet::closeOver(int)' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder28NeedsDesugaringForIgnoreCaseEj+0x52): undefined reference to icu_71::UnicodeSet::removeAllStrings()' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder28NeedsDesugaringForIgnoreCaseEj+0x5a): undefined reference toicu_71::UnicodeSet::size() const' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder28NeedsDesugaringForIgnoreCaseEj+0x69): undefined reference to icu_71::UnicodeSet::~UnicodeSet()' /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp_parser.cc.o): in functiondart::RegExpBuilder::AddCharacter(unsigned short)': regexp_parser.cc:(.text._ZN4dart13RegExpBuilder12AddCharacterEt+0x1e5): undefined reference to icu_71::UnicodeSet::UnicodeSet(int, int)' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder12AddCharacterEt+0x1f2): undefined reference toicu_71::UnicodeSet::closeOver(int)' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder12AddCharacterEt+0x1fa): undefined reference to icu_71::UnicodeSet::removeAllStrings()' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder12AddCharacterEt+0x202): undefined reference toicu_71::UnicodeSet::size() const' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart13RegExpBuilder12AddCharacterEt+0x20c): undefined reference to icu_71::UnicodeSet::~UnicodeSet()' /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp_parser.cc.o): in functiondart::(anonymous namespace)::LookupPropertyValueName(UProperty, char const, bool, dart::ZoneGrowableArray)': regexp_parser.cc:(.text._ZN4dart12_GLOBALN_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x3b): undefined reference to `u_getPropertyValueEnum_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBALN_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x4f): undefined reference to u_getPropertyValueName_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBAL__N_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x88): undefined reference tou_getPropertyValueName_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBALN_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0xc5): undefined reference to icu_71::UnicodeSet::UnicodeSet()' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBAL__N_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0xda): undefined reference toicu_71::UnicodeSet::applyIntPropertyValue(UProperty, int, UErrorCode&)' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBALN_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0xf1): undefined reference to icu_71::UnicodeSet::~UnicodeSet()' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBAL__N_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x114): undefined reference toicu_71::UnicodeSet::isEmpty() const' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBALN_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x120): undefined reference to icu_71::UnicodeSet::removeAllStrings()' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBAL__N_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x15c): undefined reference toicu_71::UnicodeSet::getRangeCount() const' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBALN_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x170): undefined reference to icu_71::UnicodeSet::getRangeEnd(int) const' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBAL__N_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x17d): undefined reference toicu_71::UnicodeSet::getRangeStart(int) const' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12_GLOBAL__N_123LookupPropertyValueNameE9UPropertyPKcbPNS_17ZoneGrowableArrayINS_14CharacterRangeEEE+0x327): undefined reference to icu_71::UnicodeSet::complement()' /usr/bin/ld: /root/Desktop/blutter-main/packages/lib/libdartvm3.3.4_android_arm64.a(regexp_parser.cc.o): in functiondart::RegExpParser::AddPropertyClassRange(dart::ZoneGrowableArray, bool, dart::ZoneGrowableArray, dart::ZoneGrowableArray)': regexp_parser.cc:(.text._ZN4dart12RegExpParser21AddPropertyClassRangeEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEEbPNS1IcEES6+0x6c): undefined reference to u_getPropertyEnum_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12RegExpParser21AddPropertyClassRangeEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEEbPNS1_IcEES6_+0x78): undefined reference tou_getPropertyName_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12RegExpParser21AddPropertyClassRangeEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEEbPNS1IcEES6+0xb9): undefined reference to u_getPropertyName_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12RegExpParser21AddPropertyClassRangeEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEEbPNS1_IcEES6_+0x1fb): undefined reference tou_getPropertyEnum_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12RegExpParser21AddPropertyClassRangeEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEEbPNS1IcEES6+0x232): undefined reference to u_getPropertyName_71' /usr/bin/ld: regexp_parser.cc:(.text._ZN4dart12RegExpParser21AddPropertyClassRangeEPNS_17ZoneGrowableArrayINS_14CharacterRangeEEEbPNS1_IcEES6_+0x27a): undefined reference tou_getPropertyName_71' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. Traceback (most recent call last): File "./blutter.py", line 168, in main(args.indir, args.outdir, args.rebuild, args.vs_sln, args.no_analysis) File "./blutter.py", line 149, in main cmake_blutter(blutter_name, dartlib_name, name_suffix, macros) File "./blutter.py", line 92, in cmake_blutter subprocess.run([NINJA_CMD], cwd=builddir, check=True) File "/root/.pyenv/versions/3.8.5/lib/python3.8/subprocess.py", line 512, in run raise CalledProcessError(retcode, process.args, subprocess.CalledProcessError: Command '['ninja']' returned non-zero exit status 1.

yzctzl commented 1 month ago

follow the readme, install the requirements, and try again https://github.com/worawit/blutter#debian-unstable-gcc-13

wpfpzw commented 1 month ago

解决了吗

worawit commented 1 month ago

What Linux distribution and version did you use?

From the error message, I guess libicu version is too old.

FANYbg commented 1 month ago

之前尝试过可以解析,使用的VMware,期间也没安装其他东西,就突然出现无法正常解析了