• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

darlinghq/darling: Darwin/macOS emulation layer for Linux

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

darlinghq/darling

开源软件地址(OpenSource Url):

https://github.com/darlinghq/darling

开源编程语言(OpenSource Language):

C 40.8%

开源软件介绍(OpenSource Introduction):

Darling

Darling logo

Darling is a runtime environment for macOS applications.

Please note that most GUI applications will not run at the moment.

Download

Packages for some distributions are available for download under releases.

Build Instructions

For build instructions, visit Darling Docs.

Prefixes

Darling has support for DPREFIXes, which are very similar to WINEPREFIXes. They are virtual “chroot” environments with an macOS-like filesystem structure, where you can install software safely. The default DPREFIX location is ~/.darling, but this can be changed by exporting an identically named environment variable. A prefix is automatically created and initialized on first use.

Please note that we use overlayfs for creating prefixes, and so we cannot support putting prefix on a filesystem like NFS or eCryptfs. In particular, the default prefix location won't work if you have an encrypted home directory.

Hello world

Let's start with a Hello world:

$ darling shell echo Hello world
Hello world

Congratulations, you have printed Hello world through Darling's OS X system call emulation and runtime libraries.

Installing software

You can install .pkg packages with the installer tool available inside shell. It is a somewhat limited cousin of OS X's installer:

$ darling shell
Darling [~]$ installer -pkg mc-4.8.7-0.pkg -target /

The Midnight Commander package from the above example is available for download.

You can uninstall and list packages with the uninstaller command.

Working with DMG images

DMG images can be attached and deattached from inside darling shell with hdiutil. This is how you can install Xcode along with its toolchain and SDKs (note that Xcode itself doesn't run yet):

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

Congratulations, you have just compiled and run your own Hello world application with Apple's toolchain.

Working with XIP archives

Xcode is now distributed in .xip files. These can be installed using unxip:

cd /Applications
unxip Xcode_11.3.xip



鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap