关于Darling
Darling是一个适用于Linux的Darwin/macOS仿真层,该工具本质上是macOS应用程序在Linux系统上的运行环境,可以帮助广大研究人员在Linux操作系统上运行和分析macOS应用程序的安全性。
工具特性
1、轻量简易:Darling无需使用硬件模拟器即可直接运行macOS软件;
2、免费开源:与Linux一样,Darling是免费的开源软件。它在GitHub上公开发布,并根据GNU GPL许可证v3版本分发;
3、兼容性高:Darling实现了完整的Darwin环境。Mach、dyld、launchd...一切你期望的都有;
4、便于使用:Darling会为我们完成大部分工具设置,开箱即用;
5、接近原生:将运行在Darling下的应用程序完全集成到Linux桌面体验中,使它们的外观、感觉和行为就像原生Linux应用程序一样;
工具要求
sudo apt install cmake automake clang-15 bison flex libfuse-dev libudev-dev pkg-config libc6-dev-i386 \ gcc-multilib libcairo2-dev libgl1-mesa-dev curl libglu1-mesa-dev libtiff5-dev \ libfreetype6-dev git git-lfs libelf-dev libxml2-dev libegl1-mesa-dev libfontconfig1-dev \ libbsd-dev libxrandr-dev libxcursor-dev libgif-dev libavutil-dev libpulse-dev \ libavformat-dev libavcodec-dev libswresample-dev libdbus-1-dev libxkbfile-dev \ libssl-dev libstdc++-12-dev
工具安装
Darling使用了git-lfs,并且大量使用了Git子模块,因此我们需要使用下列命令将该项目源码克隆至本地:
GIT_CLONE_PROTECTION_ACTIVE=false git clone --recursive https://github.com/darlinghq/darling.git
更新源命令如下:
git lfs install git pull git submodule update --init --recursive
代码构建
# 切换到项目根目录 cd darling # 删除之前按轧辊的Darling tools/uninstall # 新建一个项目构建目录 mkdir build && cd build # 配置构建参数 cmake .. # 构建并安装Darling make sudo make install
工具使用
首先,我们可以一个Hello world开始:
$ darling shell echo Hello world Hello world
恭喜,我们现在已经通过Darling的OS X系统调用模拟和运行时库打印了Hello world。
我们可以使用Shell提供的安装程序工具来安装.pkg软件包:
$ darling shell Darling [~]$ installer -pkg mc-4.8.7-0.pkg -target /
我们可以使用hdiutil从darling shell内部添加和管理DMG镜像,下面给出的命令是安装 Xcode 及其工具链和 SDK 的方法(请注意,Xcode本身尚未运行)::
Darling [~]$ hdiutil attach Xcode_7.2.dmg /Volumes/Xcode_7.2 Darling [~]$ cp -r /Volumes/Xcode_7.2/Xcode.app /Applications Darling [~]$ export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk Darling [~]$ echo 'void main() { puts("Hello world"); }' > helloworld.c Darling [~]$ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang helloworld.c -o helloworld Darling [~]$ ./helloworld Hello world
现在,我们就已经使用了Apple的工具链编译并运行了我们自己的Hello world应用程序。
许可证协议
本项目的开发与发布遵循GPL-3.0开源许可协议。
项目地址
Darling:【GitHub传送门】
参考资料
https://darling-misc.s3.eu-central-1.amazonaws.com/mc-4.8.7-0.pkg
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)