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

Переделать программы Windows для Linux - C Linux

Войти
Регистрация
Восстановить пароль
 
Vovka
24 / 24 / 5
Регистрация: 27.09.2014
Сообщений: 269
31.12.2016, 15:04     Переделать программы Windows для Linux #1
В общем надоел мне Windows и переезжаю на Linux Mint 18
Теперь есть большая проблема в переносе написанных мною программ под Linux.
Под Windows программы писались в Visual C++ 2008 либо консольные, либо с использованием MFC.
Подскажите, пожалуйста, что нужно установить (желательно откуда и как чтоб побыстрее) чтобы переделать программы?
Желательно что-то близкое к Visual C++ и MFC.
ЗЫ. Гуглил, но пока сомневаюсь чего и как...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
malhaz
 Аватар для malhaz
6 / 6 / 2
Регистрация: 23.12.2016
Сообщений: 26
31.12.2016, 18:21     Переделать программы Windows для Linux #2
Зачем тащить старый хлам? Раз решили - начните всё заново, но, не знаю как вам, но все редакторы текста, отличные от Микрософта, вызывают (увы) рвотное чувство, желание как можно скорее вернуться "домой".
Vovka
24 / 24 / 5
Регистрация: 27.09.2014
Сообщений: 269
31.12.2016, 18:48  [ТС]     Переделать программы Windows для Linux #3
При чем здесь тащить старый хлам? Вот например, у меня есть консольное приложение, которое запускается после компиляции прошивки для микроконтроллера и модифицирует ее. Как мне теперь поступать???
sharpey
136 / 126 / 21
Регистрация: 21.09.2008
Сообщений: 394
01.01.2017, 11:37     Переделать программы Windows для Linux #4
Vovka, не видя код, трудно делать выводы о зависимости Ваших проектов к Windows. Если использовали WinAPI в месте, где вполне можно было обойтись стандартной библиотекой Си (например, OpenFile вместо fopen), то избавляться от таких мест Вам придётся самостоятельно.
OwenGlendower
Модератор
 Аватар для OwenGlendower
5217 / 4267 / 1578
Регистрация: 17.03.2014
Сообщений: 7,765
Записей в блоге: 1
02.01.2017, 15:17     Переделать программы Windows для Linux #5
Vovka, я не спец по разработке под Unix, но вроде библиотеки Qt и Wx являются самыми популярными.
drfaust
255 / 145 / 36
Регистрация: 02.10.2008
Сообщений: 517
Записей в блоге: 1
Завершенные тесты: 1
02.01.2017, 17:48     Переделать программы Windows для Linux #6
Всё зависит от Vovka`ного кода. Если консольное приложение тупо перебирает каталог и шифрует всё что там есть, то Qt будет излишним. Тут нужен индивидуальный подход к каждой его проге.
Vovka
24 / 24 / 5
Регистрация: 27.09.2014
Сообщений: 269
03.01.2017, 11:05  [ТС]     Переделать программы Windows для Linux #7
Цитата Сообщение от OwenGlendower Посмотреть сообщение
но вроде библиотеки Qt и Wx являются самыми популярными
Какую лучше выбрать? Что-то не пойму, они платные или нет?
Кроме обычных консольных приложений по обработке файлов нужно: графический интерфейс, работа с почтой, http, ftp, какая-нибудь встроенная как в Windows база данных Access...
drfaust
255 / 145 / 36
Регистрация: 02.10.2008
Сообщений: 517
Записей в блоге: 1
Завершенные тесты: 1
03.01.2017, 15:02     Переделать программы Windows для Linux #8
Qt - комбайн, который желает перекрыть всё что только возможно
Wx - только графика

БД - море, mariaDB, MySQL, PostgresDB, и множество иных.
Vovka
24 / 24 / 5
Регистрация: 27.09.2014
Сообщений: 269
03.01.2017, 15:45  [ТС]     Переделать программы Windows для Linux #9
Вот нашел:
В Linux устанавливать компилятор MinGW может потребоваться только в том случае, если Вы собираетесь производить сборку приложений для Windows.

Добавлено через 18 минут
Может кому сгодиться:
Установка Qt на Windows и Linux (Mint и Ubuntu)
Установка Qt и QtCreator в Ubuntu 14.04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.01.2017, 22:56     Переделать программы Windows для Linux
Еще ссылки по теме:

Адаптировать код для Linux C Linux
C Linux IDE как в Linux под Windows
Откомпилировать linux-проект под windows C Linux
C Linux Использование языка программирования C для работы в ОС Linux
C Linux Как запустить образ программы под Linux?

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

Или воспользуйтесь поиском по форуму:
drfaust
255 / 145 / 36
Регистрация: 02.10.2008
Сообщений: 517
Записей в блоге: 1
Завершенные тесты: 1
03.01.2017, 22:56     Переделать программы Windows для Linux #10
Сам выбирай что и к чему.
Если хочешь пересесть на линух - многое по-новому учить придётся (в первую очередь сам линух), т.к. элементарные проги доведены до совершенства и их очень просто использовать в C/C++ прогах.
Например:
1. Поиск COM-портов в системе:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int com_file,i;
  struct termios ss;
  struct RS232_names     *p;
  char   swtn[6+FILENAME_MAX],fullpaths[6+FILENAME_MAX],*tmp,*tmp1;
  FILE   *pfile;
    
  /*reinit list of devices*/
  if(device_names != NULL)
      rs232_clearnames();
   
  pfile=popen("dmesg | grep tty | wc -L && dmesg | grep tty","r");
  if(pfile==NULL)
    return ERR_RS232_FS_ERROR;
  
  fscanf(pfile,"%i",&i); /*max length of dmesg string with ttyS*/
  swtn[i+1]='\0';
или то же самое с LPT-портами
C
1
2
3
4
5
6
7
8
9
10
11
12
13
int  lpt_file,i;
  FILE   *pfile;
  struct LPT_names *p;
  char   swtn[6+FILENAME_MAX],fullpaths[6+FILENAME_MAX],*tmp,*tmp1;
  
  if(LPT_device_names != NULL)
    lpt_clearnames(); /*reinit*/
  
  if((pfile=popen("dmesg | grep parport | wc -L && dmesg | grep parport","r"))==NULL)
    return ERR_LPT_FS_ERROR;
  
  fscanf(pfile,"%i",&i); /*max length of dmesg string with parport*/
  swtn[i+1]=0;
Хотя применительно к LPT сть более адекватное решение: использование ieee1284.h
Такие же простые решения можно найти и в других областях.

QT - монстр, полностью его осилить - не один месяц постребуется. В то же время более простые весчи можно решить более простыми вещами - в консоли вообще не вижу смысла использовать QT, для простых диалогов с юзером - можно использовать скрипты с dialog и пр., Текстовый редактор с "причудами" возможно будет быстрее реализовать с FLTK+.

З.Ы. Для каждой вещи стоит использовать адекватный инструмент. В линухе несколько всё иначе, чем в винде. Многое решается без компиляции вообще - с помощью встроенных шелл-оболочек вроде /usr/bin/sh
Yandex
Объявления
03.01.2017, 22:56     Переделать программы Windows для Linux
Ответ Создать тему
Опции темы

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