LinuxでXcodeを実行できますか?


186

LinuxでXcodeを実行できますか?Mac OS XはBSD Unixに基づいていましたが、それは可能ですか?

私が聞いたことから、iPhoneシミュレーターを備えたMonoDevelopプラグインがあります。


2
私は、これは、Linux開発者のためのIOSのXcodeを置き換えるために迅速に放出され、あなたがアップルを探しているのだと思うcnet.com/news/apple-introduces-swift-2
PauAI

彼らはXcodeではなく迅速にリリースしました。
Antzi

まだ良くない。言語がオープンソースであり、標準ライブラリとともにLinux上で公開されているだけです。iOSアプリの作成やXcodeの置き換えは意図されていません。Linuxアプリを迅速に作成したい。もちろん、これはクロスコンパイラを作りたい人々の仕事を単純化します。
Antzi

回答:


399

Xcodeの低レベルのツールチェーン(gccコンパイラファミリ、gdbデバッガなど)はすべてオープンソースであり、UnixおよびLinuxプラットフォームに共通です。しかし、IDE(エディター、プロジェクト管理、インデックス作成、ナビゲーション、ビルドシステム、グラフィカルデバッガー、ビジュアルデータモデリング、SCMシステム、リファクタリング、プロジェクトスナップショットなど)はMac OS X Cocoaアプリケーションであり、移植性はありません。


76
一般的なものとMac中心のものの+1の短い内訳
curtisk

11
言うまでもなく、それを別のOSで実行すると、EULAに違反することになります。ライセンス契約に関しては、Appleは特にけちです。
jpaugh、2015

1
これは100%正しくありません(または最新ではありません)。標準のGCCはMach-Oオブジェクトファイルを生成できませんが、Clangは生成できます。ただし、最終的なバイナリをリンクするには、Appleのldが必要です。DarlingはLinuxで元のXcodeツールチェーンを実行できます(Xcode IDEは実行できません)。
LubosD 2016

38

まだ誰もVagrantを提案していないので、これがOSX用のVagrantボックスです。

vagrant init https://vagrant-osx.nyc3.digitaloceanspaces.com/osx-sierra-0.3.1.box
vagrant up

MACOS仮想マシンがあります。しかし、AppleのEULAによると、それをMacOSハードウェアで実行する必要があります:Dしかし、どこにでも、MacOSをワイプしてUbuntuをインストールしたすべてのオタクに1つあります:D

残念ながら、SSH X-forwardingオプションを使用して内部からエディターを実行することはできません。


3
XcodeでアプリをビルドするためにGUIエディターを実行できる必要がありますか、それともCLIから実行できますか?
Jose V

26

答えるのではなく、コメントしたかった。しかし、正確に言うと、OSXはBSDベースではなく、NeXTStepの進化形です。NeXTStep OSは、CMUが開発したMachカーネルを利用しています。もともとはMicroKernelとして設計されましたが、最終的にはパフォーマンスの制約により、APIのUnix部分をカーネル自体に含める必要があると判断し、BSD互換の「サーバー」(当初はBSD互換の要求を処理することを目的としていました)カーネルメッセージ)はカーネルに移動され、モノリシックカーネルになりました。プログラミングAPIでBSD互換である可能性がありますが、BSDではありません。

OSの残りの部分は、ObjectiveC(GNU / GCCのStepstoneとRichard Stallmanの間の取り決めの下で)と呼ばれ、「Display Postscript」と呼ばれるテクノロジーに基づくGUIを備えています。OS XはDisplay PostscriptをDisplay PDFに変更し、一般的なハードウェア要件を1000倍に増やしました(NeXTは8〜16 MBで実行できましたが、現在はGBが必要です)。

GCCとObjective CとNeXTが密接に結びついているため、LinuxでネイティブにXCodeを実行するのに最適な方法は、GNUStepライブラリを利用してポート(ソースを手に入れることができる場合-幸運)を実行することです。もともとNextStepとその後OpenStepとの互換性のために設計されましたが、Cocoaとの互換性が向上したと聞いていますが、20年近くの間、どれも使っていません。もちろん、Swiftではなく、ObjCまでしかアクセスできません。Appleがそれをオープンソースにするかどうかはわかりません。


9

VMware PlayerまたはWorkstation(またはVirtualBoxを実行している場合、Mac OS Xをサポートしているかどうかはわかりませんが)を実行している場合、Mac OS X Server(クライアントを合法的に仮想化することはできません)。もちろん、この場合はOS XでXCodeを実行していますが、ホストマシンはLinuxでもかまいません。


5
VirtualBox内でOS Xを実行することは確かに可能です。この方法で10.8 Mountain Lionを実行します。ハウツーに従う必要があります。それはほぼ完璧に動作します。私はデンマーク人なので、独自のキーボードレイアウトを作成する必要がありました。
Kristian Spangsege 2012年

3
サーバーでさえも(合法的に)Appleハードウェア上でのみ仮想化できます。ただし、LinuxをAppleハードウェアで実行し、次にゲストとしてMac OS Xを実行することは合法だと思います(ただし、これが魅力的なオプションかどうかはわかりません)。@KristianSpangsege:VirtualBoxで動作するのを聞いてうれしい...約5つの異なるバージョンをインストールしましたが、すべて非常に遅くなりました。VMwareに切り替えるまでは、仮想化されたすべてのMacOSXに問題があると思いました...そこではほとんど問題がありませんでした(時折、短いスローダウンがまだ発生しています)。
johndodo 2014年


4

そのプラグインにはMonoTouch(無料ではない!)が必要だと思います。

LinuxではXcodeを実行する方法はありません。

すべての悪いニュースでごめんなさい。:)


2

いいえ、iPhone開発用の.NET / mono環境であるMonoTouchについて聞いたことがあるでしょう。ただし、Macと公式のiPhone SDKが必要です。そしてエミュレータは公式のアップルのものであり、これは別個のIDEとして機能し、Objective Cでコーディングする必要がなく、c#でコーディングすることができます

控えめに言っても興味深いプロジェクトです...

編集:どうやら、あなたは今すぐアプリストアで配布できます



0

別のOSでXCodeが必要な場合は、クラウドコンピューティングをお勧めします。これにより、アプリはMacで開発され、App Storeに送信できます。



0

誰もKVMを提案しなかったのは奇妙でした

ほぼネイティブのパフォーマンスを提供し、組み込みのLinuxです。行って確認してください。

あなたはあなたがMacのみを使用しているように感じ、Xcodeをそこにインストールしますあなたは起動時にLinuxのものではなくOSX GUIを直接起動することさえ選択するかもしれません


-2

OSXはLinuxではなくBSD基づいています。LinuxマシンではXcodeを実行できません。


1
実行中のカーネルとは関係ありません。そしてMacOSはほとんど「BSDベース」ではありません。歴史については上記の私の答えを参照してください
Evan Langlois
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.