Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
AleksyVB
6 / 6 / 1
Регистрация: 10.12.2013
Сообщений: 135
#1

Переносимость программы, куча dll и кроссплатформенность - C++

08.05.2014, 11:24. Просмотров 873. Ответов 20
Метки нет (Все метки)

Решил пощупать С++ и Qt после C#.

Создал простейшее консольное приложение и оконное Qt. В итоге, что бы приложение открылось вне IDE Qt пришлось скопировать в папку с программой dll для консольного приложения на 1мб+, для оконного на 350мб+.

При переносе приложения на другие компьютеры вместе с этой кучей dll консольное приложение работает, а вот оконное нет, выдает Microsoft Visual C++ Runtime Library - This app has requested the Runtime to terminate it in an unusual way. VC++ redistribut требует?

Если надо таскать dll на 300+ мб то чем это отличается от framework тогда? Наверно их вшить в приложения можно, но в любом случае программа сильно увеличится в размерах.

К тому же, как я правильно понял в идеале надо перекомпилировать программу под каждый процессор и ОС отдельно, причем если для виндуса может быть перенос копи пастом сработать, то для линукса нужно полюбому перекомпилировать программу(что бы она работала без wine), в связи с этим сильно разочаровался, так как под кросплатформенностью я понимал простой перенос программы на любую ОС, на любой проц. Лично проверял, что программы, созданные под .Net спокойно работают в Linux без wine под mono.

В чем преимущество C++ тогда, в быстродействие самой программы на доли секунды, что не будет заметно невооруженном глазом? Низкий уровень не нужен, нужна реализация Gui для сотрудников офисов и т.д.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2014, 11:24     Переносимость программы, куча dll и кроссплатформенность
Посмотрите здесь:

Переносимость программы в семействе windows - C++
Ранее писал программу на visual 2010 и windows 7, затем перешел на visual 2013 и windows 8.1. И теперь выскакивает вот такая ошибка: ...

Отладка программы, куча ошибок - C++
помогите отладить плиз вот задание Определить пользовательский класс в соответствии с вариантом задания. Определить в классе...

C++ и кроссплатформенность - C++
Здравствуйте! есть небольшой код на плюсах, необходимо, чтобы он был кроссплатформенный. Реально ли это? Как это сделать, если у меня...

Кроссплатформенность... - C++
Привет всем! Необходимо написать некое графическое приложение, при этом оно должно быть кроссплатформенными и API-независимым. Как я...

модули.переносимость - C++
модуль в языке СИ? не могу нигде ничего найти про них.может кто-нибудь подскажет в каком учебнике искать или напишет что ЭТО??? и ещё...

dll программы для поиска Outlook - C++
Privet. Nugen sovet. Pishu installyaziu dlya moey dll, programmka budet iskat' Outlook i kopirovat' v tu ge papku mou dll. Eto v prinzipe...

Создание и использование DLL, Трудности с запуском программы - C++
В Задании имеется образец программы, не знаю как запустить чтобы работал заголовочный файл. Ну или чтоб вообще что-то работало. Вот сама...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.05.2014, 12:39     Переносимость программы, куча dll и кроссплатформенность
Еще ссылки по теме:

Внедрение DLL: Не получается вытащить данные из listview чужой программы. - C++
В общем ситуация такая. Есть чужая программа, в ней элемент управления(ЭУ) похож на listview, но его класс отличается от стандартного. В...

Запуск программы невозможен так как на компьютере отсутствует libgcc-s-sjlj-1.dll. Попробуйте переустановить программу - C++
Программа не запускается. Вывод: "krest_null.exe": Загружено: "C:\scripts\C++\krest_null\Debug\krest_null.exe", Символы загружены. ...

Повреждена куча - C++
Запускаю - если ввожу любое число больше 2х, то все работает. Но если пишу количество: 2, программа не воспроизводит результат. И пишет,...

биномиальная куча - C++
подкиньте какой литературы или пример формирования и редактирования биномиальной кучи, буду очень благодарен

Стек и куча - C++
Вроде разобрался с этими зверями, хочется уточнить некоторые моменты на понимание: физически они в ОЗУ, сначала сегмент кода программы,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
08.05.2014, 12:39     Переносимость программы, куча dll и кроссплатформенность #21
Совместимость некоторых процессоров между собой ни кто как бы не отрицал, но есть два но.
1. Он ведь написал "в идеале". Так вот, старый процессор может не поддерживать некоторых операций нового процессора, их придётся заменять целыми цепочками из нескольких операций, а то и циклами, что будет медленнее. В итоге прога, которую ни кто не перекомпилировал под целевой процессор, или вообще не будет работать на старом камне, или не сможет использовать весь потенциал, заложенный в камень по-новее. Например, если приложение использует данные какой нибудь большой разрядности типа 128-ми бит, то на современных процессорах оно должно будет юзать длинную арифметику, чтоб хоть как то работать, а если в будущем появится 128-ми битный процессор, даже совместимый с АМД64, то в идеале под него всё равно надо перекомпилировать прогу с длинной арифметики на 128-ми битные операции, чтоб увеличить скорость счёта.
2. Прога может быть предназначена и для не совместимых процессоров, например, одновременно для итаниума и AMD64. И придётся отдельно компилировать для windows server 64 бит и отдельно для windows x64. Ему же кросплатформы охота.
Yandex
Объявления
08.05.2014, 12:39     Переносимость программы, куча dll и кроссплатформенность
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru