Портирование автономного .NET C++ на Mac

Мне нужно оценить портирование отдельной программы на Mac с платформы .NET. У меня есть весь исходный код, который находится на C++, и это код, который я написал, и модифицированная версия GLUT/GLUI, потому что программа использует OpenGL и GLUT/GLUI в качестве пользовательского интерфейса.

Я не думаю, что код C++ будет проблемой или среда OpenGL, пожалуйста, скажите мне, если вы думаете, что это будет. В .NET я использую OpenGL32.DLL и развертываю его в своем приложении. Мне нужно выяснить, как это делается для Mac?

Мне действительно нужно знать, каков текущий метод развертывания для Mac в эти дни и насколько сложно мне будет писать для него. Для .NET я использую Visual Studio для разработки и развертывания приложений, я делаю новый проект VS для создания развертываемого установщика MS.

Процесс развертывания также позволяет размещать ярлык на рабочем столе, связывать уникальный значок с программой... Какие варианты развертывания можно выбрать на Mac? Как вы думаете, что будет самым большим препятствием?

В коде нет вызовов .NET framework. На этапе развертывания создается сборка .NET со всеми функциями безопасности. Я думаю, что это основная связь с .NET, поскольку это прямой C++, а не C#.


person jeffD    schedule 07.07.2009    source источник
comment
Это неуправляемый проект, компилируемый для платформы Win32? Если вы используете какую-либо из библиотек .NET framework, это значительно усложнит процесс переноса. Но все стандартные библиотеки C++ для Win32 должны соответствовать отраслевым стандартам и, следовательно, быть совместимыми с Mac/Linux и т. д. Не знаю насчет OpenGL...   -  person Giffyguy    schedule 08.07.2009
comment
Какую роль играет .NET? Это приложение C++/CLI или собственный C++? Есть ли компоненты .NET? Судя по тому, как вы говорите .NET, это звучит так, как будто это ОС, а это не так.   -  person jalf    schedule 08.07.2009


Ответы (1)


Развитие должно быть довольно прямолинейным. Вы сможете использовать OpenGL/GLUT/и т. д. через структуру Cocoa. Посмотрите на этот пример от Apple, чтобы увидеть, как это делается в коде.

Что касается инструментов разработки, вы сможете использовать Xcode (бесплатный для Mac). Вы можете разрабатывать на C++ и компилировать с помощью GCC.

person Reed Olsen    schedule 07.07.2009
comment
Как выглядит развертывание на Mac? - person jeffD; 08.07.2009
comment
Приложение может быть скомпилировано в отдельный двоичный файл. Многие разработчики проектируют свои приложения таким образом, чтобы их можно было просто перетащить в папку «Приложения». Дополнительные сведения см. в следующей статье: developer.apple.com/ документация/UserExperience/Conceptual/ - person Reed Olsen; 08.07.2009