2012-04-05 8 views
1

Hallo stackoverflow Gemeinschaft!Verwenden von Mac OS X (Xcode 4.1) für die Entwicklung von FreeBSD

Ich bin im Begriff, Patches für FreeBSD Ports Sammlung (pkgng Dienstprogramm) mit C-Programmiersprache zu entwickeln.

Das Problem ist, dass ich Mac OS X benutze und ich wirklich nicht zu einem anderen Betriebssystem wechseln möchte. Ich habe Freebsd 9.0 auf Parallels Desktop VM installiert. Xcode 4.1 scheint ein ziemlich nettes Entwicklungstool für C zu sein.

Ist es möglich, die Entwicklung für FreeBSD über Xcode 4.1 zu implementieren? Wie man Projektumgebung für solch eine Form der Entwicklung einrichtet und Quelle für FreeBSD kompiliert?

Ich bin auch offen für irgendwelche anderen Vorschläge bezüglich der plattformübergreifenden Entwicklung mit MacOS X, um Patches für FreeBSD zu entwickeln. Was ist der beste Weg, um alle notwendigen Dinge zu organisieren?

Antwort

2

Da Sie Patches für pkgng entwickeln möchten, würde ich Ihnen dringend empfehlen, den Code unter FreeBSD zu kompilieren und zu testen, da es das einzige System ist, das die Ports und Pakete verwendet, mit denen pkgng kommuniziert. Sofern es nicht für FreeBSD kompiliert werden kann, ist die Verwendung von OS X IDE wahrscheinlich keine gute Idee.

Parallels ist mir nicht bekannt, aber es gibt wahrscheinlich einen Dateifreigabemechanismus, den Sie zwischen OS X und dem in der VM laufenden FreeBSD einrichten können. Auf diese Weise können Sie Ihre Dateien unter OS X bearbeiten und unter FreeBSD verwenden.

2

X-Code ist wirklich nett, und ich würde mich darauf konzentrieren, ihn zu verwenden, aber dann regelmäßig Builds auf einem System zu machen, auf dem eigentlich FreeBSD läuft. Wenn Sie eine Quelle für alles haben, was Sie verwenden (außer Standardbibliotheken, deren Schnittstellen übereinstimmen), gibt es keinen Grund, unter OS X mit Xcode nicht zu arbeiten. Sie können bei Bedarf eigene Bibliotheken erstellen. Eine Sache, die Cross-Plattform schreibt, ist (vorausgesetzt, Sie bauen regelmäßig auf der anderen Plattform auf), dass Sie Ihren Code portabler machen. Es ist einfacher, plattformspezifische "Erweiterungen" zu vermeiden.