Я упорный разработчик .NET с ограниченным опытом в C ++. Я действительно знаком с тем, как счастливо интерпретируемые языки (и языки сценариев) работают кроссплатформенно, но как насчет C ++?
Я понимаю, что GCC / GPP и некоторые другие компиляторы работают на разных платформах с правильными флагами компилятора, и я понимаю, что STL нормализован между компиляторами, но что еще мне не хватает? Мне нужно сделать аудио вход / выход, высокоточные таймеры, и мне нужно сделать многопоточность. Я не думаю, что что-то из этого поддерживается в STL, поэтому мне понадобится кроссплатформенная библиотека какого-то типа, верно? Какой из них я должен использовать?
Я стремлюсь поддерживать новейшие платформы Mac и Windows. Это общий каркас / SDK и не будет иметь пользовательского интерфейса. Я планирую написать пользовательский интерфейс на родном языке, таком как Objective-C / Cocoa и .NET / WPF (оба имеют отличную поддержку нативного интерфейса).
Так как должна выглядеть моя цепочка инструментов? Должен ли я использовать GCC / GPP или MinGW? Какие еще «библиотеки» я должен интегрировать, чтобы они работали кроссплатформенно? Я хотел бы настроить свою среду сборки так, чтобы она «просто работала» так, чтобы я мог создавать совместимый с Mac двоичный файл и двоичный файл, совместимый с Windows (32-разрядный и 64-разрядный). Как я могу это сделать?
На этом этапе я буду писать код для каждой платформы, чтобы я мог взаимодействовать с этой моей многоплатформенной средой C ++ sdk / api thingy. Я думаю, что в Windows это будет выглядеть как управляемая DLL, так? Есть мысли о том, как я это сделаю на Mac?
Есть предложения или рекомендации?
Спасибо за предложения,
Brett