закончил например сегодня порт
одного мелкого проекта - либа для парзинга некоторых форматов файлов, большей частью на C++, размером около 20 kloc. Изначально она была написана под windows с поддержкой 32 и 64 бит.
Процесс портирования был адово отвратен. У меня сложилось совершенно четкое ощущение что разработчика под linux рассматривают как врага и относятся к нему соотв-но
Отладчик gdb - уровня debug.com, добро пожаловать в старые недобрые восьмидесятые.
IDE нет в принципе (потому что доступ к серверу linux только через ssh). vim & emacs - дичайшая упячка, как этим убожеством можно пользоваться в здравом уме - я не могу себе вообразить.
make по сравнению с нормальной visual studio с ее возможностью легко и просто прописать dependecies - каменный век.
gcc весьма своеобразно поддерживает стандарт C++ - например для всех template specialized методов пришлось явно прописывать template <>. Visual C++ например ничего такого не требовал. Пришлось написать perl script для вставки нужного
Да чо там templates - у них в заголовочных файлах даже не нашлось готовых min, max & _countof !
Дальше - я например не представляю себе как писать более-менее безопасные программы без SEH & security enhanced ф-ций типа strcpy_s. Угадайте с трех раз есть ли они под этой самой передовой в мире os ?
Меньше всего проблем как ни странно возникло с некоторым количеством кода, написанного для скорости на asmе - видимо потому что в обоих os использовался
yasm
Осталось еще прикрутить это дело к perlу и ноги моей в вашем отсталом linuxе не будет я надеюсь никогда