Она и сейчас проблематична. Для MSVC надо выстраивать свою инфраструктуру. Пока её видно. Проприетарность компилятора создаёт много сложностей. Он не предназначен для создания приложений для других систем (интересно, есть ли в EULA прямой запрет), часто использует встроенные функции, которых нет в открытых исходниках. Их дизассемблирование из бинарников и конвертация в исходный код сомнительна по лицензионной чистоте (привет ac97wav!). Математическая библиотека закрыта полностью, её надо писать заново.Я так понимаю, что динамическая линковка будет большой проблемой для MSVC
Длина командной строки и пути к файлу при запуске
Serge
Что то я не понял. Раз мы купили (ну пусть арендовали, мелкософт нынче эту идею задвигает) инструмент, то как это так мы не имеем полных прав на производный продукт? О_о
Вот мы купили молоток (ну пусть арендовали, "дядядебил лимитед" нынче эту идею задвигает) и чо мы теперь имеем право забивать гвозди только фирмы "дядядебил лимитед" и только в материалы продаваемые фирмой "дядядебил лимитед"? Это же маразм полнейший! Раз так, то следующего человека, который будет настаивать, что компилятор MSVC лучший компилятор во всех отношениях я буду посылать далеко.
Что то я не понял. Раз мы купили (ну пусть арендовали, мелкософт нынче эту идею задвигает) инструмент, то как это так мы не имеем полных прав на производный продукт? О_о
Вот мы купили молоток (ну пусть арендовали, "дядядебил лимитед" нынче эту идею задвигает) и чо мы теперь имеем право забивать гвозди только фирмы "дядядебил лимитед" и только в материалы продаваемые фирмой "дядядебил лимитед"? Это же маразм полнейший! Раз так, то следующего человека, который будет настаивать, что компилятор MSVC лучший компилятор во всех отношениях я буду посылать далеко.
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Серж не утверждал. РеактОС, например, юзает их компилятор.Mario_r4 wrote:Serge Это же маразм полнейший! Раз так, то следующего человека, который будет настаивать, что компилятор MSVC лучший компилятор во всех отношениях я буду посылать далеко.
Из хаоса в космос
Mario, частенько в инструкциях к фирменным инструментом пишут "гарантия распространяется только на отказы, связанные с использованием сертифицированных расходных материалов". Это я, к примеру, про обжимки говорю. Не удивлюсь, если с молотками точно так же.
Serge, MSVC EULA:
Serge, MSVC EULA:
Так что использование MSVC для Колибри - прямое нарушение лицензии.General License Grant. Microsoft grants to you as an individual, a personal, nonexclusive license to make and use copies of the SOFTWARE PRODUCT for the sole purposes of designing, developing, and testing your software product(s) that are designed to operate in conjunction with any Microsoft operating system product.
Мх, в разных версиях EULA по-разному написано. Где-то просто:
И точка.Microsoft grants to you as an individual, a personal, nonexclusive license to make and use copies of the SOFTWARE PRODUCT for the purpose of designing, developing, and testing your software product(s).
Reactos отдельная тема.
MSVC один из лучших оптимизирующих компиляторов, но всё это богатство только под Windows по естественной причине.
Компиляция программ для других систем обещает массу проблем. Для mingw приходится отменять встроенные defines _Win32 _WIN32 WIN32 _MSC_VER иначе условная компиляция подключает микрософтские инклюды и предназначенные для Windows куски кода. Кроссплатформенность превращается в кошмар. Многие вещи написаны только под gcc и с msvc не дружат.
Короче у меня большие сомнения в применимости msvc для сборки больших проектов в Колибри.
MSVC один из лучших оптимизирующих компиляторов, но всё это богатство только под Windows по естественной причине.
Компиляция программ для других систем обещает массу проблем. Для mingw приходится отменять встроенные defines _Win32 _WIN32 WIN32 _MSC_VER иначе условная компиляция подключает микрософтские инклюды и предназначенные для Windows куски кода. Кроссплатформенность превращается в кошмар. Многие вещи написаны только под gcc и с msvc не дружат.
Короче у меня большие сомнения в применимости msvc для сборки больших проектов в Колибри.
Линейный адрес сегмента fs не предусмотрен? Указатель на fs:0 получить невозможно?Serge wrote:Продолжение. TLS
Однопоточные приложения могут использовать библиотеки, которые будут создавать дополнительные потоки. Поэтому TLS предлагается создавать всегда, независимо от числа потоков в программе.
- fs:0 хранит id текущего потока
- fs:4 зарезервирован для id процесса/адресного пространства
- fs:8 нижняя граница стека потока
- fs:12 верхняя граница стека потока
- fs:16-1020 доступны приложениям
Сделаем мир лучше!
CleverMouse
Нет, я предполагал tls для хранения указателей, а не структур данных. Если необходимо, можно занять fs:0, сдвинув остальное.
Нет, я предполагал tls для хранения указателей, а не структур данных. Если необходимо, можно занять fs:0, сдвинув остальное.
Кодогенератор MSVC может выдавать обращения к fs:0 и fs:2Ch. Если их зарезервировать под что-нибудь, потом могут быть большие проблемы. Ядро Linux, если я правильно помню, не резервирует никаких данных в fs и вообще устанавливает fs только по просьбе программы, зато резервирует целых три TLS-селектора, один для glibc, один для Wine, один на всякий случай.
Сделаем мир лучше!
CleverMouse
Хорошо, тогда fs:0 и fs:2Ch будут оставлены для msvc/wine.
А адрес сегмента tls нужен ?
Хорошо, тогда fs:0 и fs:2Ch будут оставлены для msvc/wine.
А адрес сегмента tls нужен ?
Я думаю, стоит адрес сегмента tls хранить.
Сделаем мир лучше!
CleverMouse
Хорошо, тогда
Хорошо, тогда
- fs:0 зарезервировано
- fs:4 линейный адрес tls
- fs:8 pid
- fs:12 зарезервировано
- fs:16 нижняя граница стека
- fs:20 верхняя граница стека
- fs:2Ch зарезервировано
Еще у меня предложение/замечание написать потому EXAMPLE.ASM с пояснениями какие поля не понадобятся для типичной средней программы.
А то я от вашего "птичьего" языка уже запутался.
А то я от вашего "птичьего" языка уже запутался.
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Если не будет замечаний по заголовку, для простой программы не использующей PE DLL, не понадобятся поля import и eimport. Неиспользуемые поля заголовка должны быть нулевыми.
Так как насчет указателя очереди GUI-запросов?Serge wrote:Ещё есть предложения / замечания ?
Who is online
Users browsing this forum: No registered users and 4 guests