自己动手实现基于llvm的字符串加密

张总,我也遇到编译不过的问题,能不能告知系统需要安装什么库或者是什么环境呢,弄了一周多了。

README里有。。具体报错是啥

那兄弟你比我好,我llvm都编译不过,估计是系统缺什么东西,但是我又不知道缺什么

那么报错信息呢

感谢回复,这个是编译“Hikari-release_60”的报错信息,编译 llvm的7.0 5.0也都是这个报错信息

CMake Error at tools/xcode-toolchain/CMakeLists.txt:52 (string):
string sub-command REGEX, mode MATCH needs at least 5 arguments total to
command.

CMake Warning at tools/xcode-toolchain/CMakeLists.txt:60 (message):
Failed to detect the version of an installed copy of Xcode, falling back to
highest supported version. Set XCODE_VERSION to override.

CMake Error at tools/xcode-toolchain/CMakeLists.txt:80 (message):
Could not identify toolchain dir

– Configuring incomplete, errors occurred!


这个是编译“Hikari-release_70” 的报错信息

– Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
CMake Error at /Applications/CMake.app/Contents/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find SWIG (missing: SWIG_EXECUTABLE SWIG_DIR)
Call Stack (most recent call first):
/Applications/CMake.app/Contents/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
/Applications/CMake.app/Contents/share/cmake-3.13/Modules/FindSWIG.cmake:63 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
tools/lldb/scripts/CMakeLists.txt:35 (find_package)

– Configuring incomplete, errors occurred!


Could NOT find SWIG (missing: SWIG_EXECUTABLE SWIG_DIR)

这个我安装了以后会提示跟 Hikari-release_60一样的报错信息,是不是还缺什么环境呢,有没有一个环境列表,我直接装完试试

README里。
你这个感觉是Xcode的问题。控制台执行一下xcrun -find otool返回啥

执行了xcrun -find otool 以后返回了 /Library/Developer/CommandLineTools/usr/bin/otool

1 个赞

是的呀,你要切回Xcode自己的SDK路径

才开始搞的ios方面,对Xcode不了解,我没动过他的sdk,就是之前新建了一个ollvm的工具链,也没有成功,还请张总告知如何设置

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

666,感谢张总,构建成功了,编译试试看,还有一个问题想请教一下,我使用编译好的ollvm,按照https://github.com/obfuscator-llvm/obfuscator/wiki/Installation他这上面的方法去设置xcode的编译器,编译选项可以看到有ollvm,但是编译的时候可以看到,他找的还是llvm的路径,我反复验证了我的设置过程,都没有问题,这种情况大概是什么原因呢,我的xcode版本是10.1,系统版本是10.14.2 。

编译差不多完成的时候,报错了,看到还是有/Library/Developer/CommandLineTools/usr/bin这个目录,是不是哪个地方还有设置的呢?

编译Hikari-release_70报错信息:

[4307/4693] Linking CXX executable bin/debugserver

FAILED: bin/debugserver

: && /Library/Developer/CommandLineTools/usr/bin/c++ -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color -Wno-deprecated-declarations -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-deprecated-register -Wno-vla-extension -Wno-gnu-zero-variadic-macro-arguments -Wno-zero-length-array -Wno-extended-offsetof -Os -DNDEBUG -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names -stdlib=libc++ -Wl,-sectcreate,__TEXT,__info_plist,/Users/kingluo/Hikari-release_70/tools/lldb/tools/debugserver/source/…/resources/lldb-debugserver-Info.plist -Wl,-dead_strip tools/lldb/tools/debugserver/source/CMakeFiles/debugserver.dir/debugserver.cpp.o -o bin/debugserver -Wl,-rpath,@loader_path/…/lib lib/liblldbDebugserverCommon.a -framework Cocoa -framework CoreFoundation -framework Foundation lib/liblldbDebugserverArchSupport.a lib/liblldbDebugserverDarwin_DarwinLog.a -lcompression && cd /Users/kingluo/Build2/bin && /Applications/CMake.app/Contents/bin/cmake -E env CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate codesign --force --sign lldb_codesign --entitlements /Users/kingluo/Hikari-release_70/tools/lldb/tools/debugserver/source/…/…/…/resources/debugserver-macosx-entitlements.plist /Users/kingluo/Build2/bin/debugserver

lldb_codesign: no identity found

[4316/4693] Building CXX object tools/…dir///scripts/LLDBWrapPython.cpp.o

ninja: build stopped: subcommand failed.


你cmake是怎么写的

构建命令吗?构建的命令是:
cmake -G “Ninja” -DCMAKE_BUILD_TYPE=MinSizeRel -DLLVM_APPEND_VC_REV=on -DLLVM_CREATE_XCODE_TOOLCHAIN=on -DCMAKE_INSTALL_PREFIX=~/Library/Developer/ …/Hikari-release_70

我的README里是怎么写的?

明白了,那我想生成xcode使用的工具链,加一句-DLLVM_CREATE_XCODE_TOOLCHAIN=on 是否可以的呢?

那个安装脚本已经是傻瓜化了你就别自己瞎折腾了吧

回复条数被限制了。。。重新申请了一个号。
我编译成功了,但是编译出来的Hikari.xctoolchain工具链使用rsync -a --ignore-existing /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/ ~/Library/Developer/Toolchains/Hikari.xctoolchain/ 命令进行拷贝失败,我手动拷贝了以后,重启xcode没有看到编译选项里面有该选择,这个情况跟我之前手动配置一样了,求教张总,哪里还会有问题呢?