خیر، دلیلش هم اینه که X Server توی Mac OS X وجود داره و برنامههای گنو-لینوکس رو با کمی تغییر میشه روی Mac اجرا کرد، ولی چیزی مثل Carbon و Cocoa و APIهای خاص Mac OS X توی گنو-لینوکس وجود نداره. البته سعیهایی شده که این APIها شبیهسازی بشه (مثل GNUstep)، ولی خوب خیلی موفق نبوده. غیر از اینکه برنامهنویس از اول برنامه رو با این هدف بنویسه که اون روی گنو-لینوکس هم پورت بشه یا اینکه برنامه کلا متنی باشه، که به اون صورت فرقی نمیکنه که با Mac OS X هستید یا Windows.
وقتی که برنامه رو با فریم ورک مینویسی معمولا تنها تغییرات برای پورت به یک سیستم عامل تغییر کتابخانههای سیستمی هستش و اهمیتی نداره که برای کدام سیستم عامل نوشته شده و به کدام سیستم عامل قراره پورت بشه
خیلی از برنامههایی که بصورت بنیادی نوشته شدن (در نظر گرفتن یونیکس) با کمترین تغییرات و یا حتی بدون تغییر بر روی همه شبه یونیکسها اجرا میشن
منظور من کامپایل مستقیم کد مک نبود بلکه کامپایل کد برنامه پورت شده بود اگه توجه کنی حتی بعضی برنامههای اوبونتو ممکنه رو ورژن جدیدتر اجرا نشن چه برسه به دو سیستم عامل متفاوت