Перейти к содержанию
  • Регистрация
  • 0
Belov.V.

Сборка приложений под Linux

Вопрос

Предлагаю поделиться практикой сборки приложений под Linux, набором ошибок и глюков.

Решил сделать пару экспериментов в связке RAD-Linux.

1) Есть рабочий Debian7. На нем не пошел PAServer. Требует glib версии 2.14 или 2.17 (на 7-ке 2.12). Добавил в репозиторий ссылку на пакеты от debian 8. Обновил. PAServer стартует, но тут же валится по ошибке сокета (не записал как звучит). Пока все пакеты подряд.

2) Поднял Debian8. Чистый.

  • PAServer стартует, SDK в RAD студию загружается.
  • При попытке сборки ошибка "[DCC Error] E2597 C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -lgcc_s"
  • При обновлении кеша файлов SDK ругается:
Directory does not exist: /usr/include/c++/
Directory does not exist: /usr/include/x86_64-linux-gnu/ (исчезла после gcc-6)
Directory does not exist: /usr/include/x86_64-linux-gnu/c++/
Directory does not exist: /usr/include/c++/
Directory does not exist: /usr/lib/gcc/x86_64-redhat-linux/
Directory does not exist: /usr/lib/gcc/x86_64-redhat-linux/
Directory does not exist: /usr/lib64/
  • Доставил пакеты gcc-6 и linux-compiler-gcc-6-x86, обновил файлы кеша SDK (исчезла вторая строчка в предупреждении при обновлении).

Ура!  Простейший пример собирается и стартует. Под отладчиком работает. Но остались шесть предупреждений при обновлении linux SDK.

Где это может вылезти?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

Еще в документации нашел рекомендацию для возможности использовать System.zLib установить пакет zlib-deve.

Для Debian9 это zlib1g-dev. Установил, обновил SDK, количество предупреждений о не найденных путях по прежнему 6

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

А вот чуть бы подробнее можно? Указанная ошибка не желает никуда уходить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

У меня PASserver нормально стартует на CentOS 7, пишет что повесился на порт. Но слушает он только интерфейс 127.0.0.1, на внешние интерфейсы он даже не пытается биндить прослушку порта. Что делать и как дальше жить?

 

Изменено пользователем Евгений Корепов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
22 часа назад, Евгений Корепов сказал:

У меня PASserver нормально стартует на CentOS 7, пишет что повесился на порт. Но слушает он только интерфейс 127.0.0.1, на внешние интерфейсы он даже не пытается биндить прослушку порта. Что делать и как дальше жить?

 

Проблему решил. Сам дурак. Прописал в iptables разрешающее правило - все заработало. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Похожий контент

    • От R.is
      Господа, нужна помощь.
      Запилил приложение, протестировал, все работает на ура и радостный иду загружать в Google Play, по требованию Google Play перед загрузкой в  AndroidManifest.template.xml нужно поставить targetSdkVersion не ниже 26.
      Как только ставлю targetSdkVersion="26", то  некоторые функции приложения перестают работать, а если обратно изменить  targetSdkVersion на 16, то все начинает работать.
      В чем может быть проблема?
       
      1) Кнопка "Поделиться" - использую стандартный ActionList
      procedure TForm2.ShowShareSheetAction1BeforeExecute(Sender: TObject); begin ShowShareSheetAction1.Bitmap.Assign(Image1.Bitmap); end;  и получаю вот что: 
      2) Кнопка "Сохранить" - сохраняю картинку в папку Pictures:
      Uses Permissions:
      Read external storage = true
      Write external storage = true
      procedure TForm2.Button2Click(Sender: TObject); begin Image1.Bitmap.SaveToFile(TPath.Combine(TPath.GetSharedPicturesPath,'phone.jpg')); end; и получаю следующую ошибку
       
      Прикрепляю тестовый проект.
      demo.rar
    • От Вадим Смоленский
      В феврале я сетовал, что мое Windows-приложение не хочет нормально запускаться в Linux под Wine 3.0. Но время идет, вышел Wine 3.6 - и теперь один из тестировщиков радостно сообщил, что всё заработало, за вычетом одного досадного момента. А именно: приложение способно сохранять фокус ввода лишь долю секунды, потом теряет. Соответственно, невозможно ничего ввести в текстовые боксы, разве только одну-две буквы. Можно щелкнуть по заголовку приложения, оно опять получит фокус - и через мгновение снова потеряет. Куда именно при этом переходит фокус, непонятно. Тестировщик утверждает, что только мое приложение ведет себя так, все остальные работают нормально.
      Нет ли у кого-нибудь идей? Что нужно проверить?
    • От x11
      Если установлена версия (Rev) 25.0.3 то можно ли удалять предыдущие: 25, 25.0.1 и 25.0.2?
       

    • От x11
      Не знаю, может глупый вопрос задам. Виной тому - понедельник
      Если приложение должно запускаться и на Android 4, и на Android 5, 6, 7.
      Нужно ли и как правильно быть с SDK?
       
      Или каждый раз менять в приложении SDK и пересобирать проект и тогда APK как-то именовать?
    • От Вадим Смоленский
      Когда мое приложение для Windows компилировалось в Delphi 6, линуксоиды успешно запускали его в Wine. Рапортовали, что неидеально, но работать можно. Теперь, после перевода на FireMonkey, один тестировщик попробовал запустить его в Wine 3.0 и сообщает:
      "Результат неутешителен - программа в нём практически не работает. Интерфейс сломан, кнопки интерфейса не нажимаются (в большинстве; а если и нажимаются, то возникают всякие ошибки)."
      Не сталкивался ли кто-нибудь здесь с этой проблемой? Я тихо надеюсь, что существует некая волшебная кнопка, которая поможет всё наладить.
      Приложение использует FireDAC и SQLite. Сторонних компонентов никаких.
    • От x11
      Delphi Tokyo не видит устройство. Нажимаю Refresh там, где Target в менеджере проекта, появляется сообщение:
       
      Что не так?
      Что нужно доустановить?



    • От Виталий Иванов
      Ошибка при запуске программы на отладку:
       
      "
      Can't open socket: Permission denied 
      Exiting
      .
      "
       
      кто знает как побороть ? 
       
      Отладку запускаю на OnePlus3 с Android 8.0.0, драйвера Google USB переустанавливал. 

    • От Pulsarius
      Здравствуйте, Ярослав! Скажите, пожалуйста, есть ли какая либо информация о планах поддержки Linux в C++ Builder? Нашей компании очень подходит RAD Studio для наших целей и быстрой разработки. Планируем приобрести лицензию. В ближайшее время планируем разрабатывать наше решение для Windows, macOS и Android, пока этого достаточно. Но есть некоторые сомнения о выборе RAD Studio и всё из-за того, что примерно через год потребуется наше решение реализовать и для Linux. Какова вероятность, что C++ Builder обзаведётся поддержкой Linux'а в течении 1 - 1,5 года? Delphi не рассматриваем. Заранее спасибо за ответ.
    • От chaplin.u@gmail.com
      Освежите в памяти для того чтобы аппликация была совместима с Лоллипопом ( Андроид 5) какие версии SDK NDK должны стоять ?
       
    • От Martifan
      Доброго времени сутки.
      вовремя запуска аппликации выдаёт такую ошибку и телефоне аппликация не запускается хотя если его запустить вручную то он работает я перерыл интернет ничего полезного не нашел может кто знает как с этим бороться.
      раньше работал нормально но через какой то время перестал.
      заранее спасибо 

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...