Распространение в linux программ на FPC

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Распространение в linux программ на FPC

Сообщение grot » 15.01.2018 10:40:48

Всем привет !

Кто-нибудь пробовал распространять откомпилированные программы на FPC для linux ?

Помнится лет 10 назад мне удавалось успешно запускать консольные приложения ( статически скомпилированные или с минимальными зависимостями ).
Компилировал на AspLinux(RedHat compatible) 32-bit - успешно запускал на Debian !

Сейчас откомпилировал на 64-bit CentOS 7 (статически) простое консольное 64-bit "Hello, World !" -
на 64-bit Debian не запускается с какой-то абсолютно невнятной Run-time error...

Что делать и кто виноват ?
grot
новенький
 
Сообщения: 74
Зарегистрирован: 13.02.2010 16:33:03

Re: Распространение в linux программ на FPC

Сообщение Ichthyander » 15.01.2018 10:46:55

Компилировал на 64-битном убунту и запускал на 64-битном Debian сервере. ТАкже делал кросс-компиляцию на Linux из Windows и также запускал на десктопах Ubuntu и серверах Debian.
Аватара пользователя
Ichthyander
энтузиаст
 
Сообщения: 668
Зарегистрирован: 04.04.2007 08:32:43
Откуда: Астрахань

Re: Распространение в linux программ на FPC

Сообщение alexs » 15.01.2018 10:55:25

В последней бубунте не пробовал. Но года назад собранные бинарнике в федоре прекрасно работали в бубнте.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4053
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Распространение в linux программ на FPC

Сообщение wavebvg » 15.01.2018 13:25:17

grot писал(а):Сейчас откомпилировал на 64-bit CentOS 7 (статически) простое консольное 64-bit "Hello, World !" -
на 64-bit Debian не запускается с какой-то абсолютно невнятной Run-time error...
Транк? Не удивляйтесь, там часто ломают и быстро ремонтируют. Да, привязки к libc нет, можно, при желании, и на системе 2001 года запустить...
wavebvg
постоялец
 
Сообщения: 354
Зарегистрирован: 28.02.2008 04:57:35

Re: Распространение в linux программ на FPC

Сообщение grot » 15.01.2018 13:56:34

wavebvg писал(а):
grot писал(а):Сейчас откомпилировал на 64-bit CentOS 7 (статически) простое консольное 64-bit "Hello, World !" -
на 64-bit Debian не запускается с какой-то абсолютно невнятной Run-time error...
Транк? Не удивляйтесь, там часто ломают и быстро ремонтируют. Да, привязки к libc нет, можно, при желании, и на системе 2001 года запустить...

Нет, это на старом-добром fpc 2.6.4

А пытаюсь запустить у "хостера" - это откомпилированный cgi-bin модуль.
Сильно подозреваю, что там "закручена" безопасность "на выполнение" приложения ...
grot
новенький
 
Сообщения: 74
Зарегистрирован: 13.02.2010 16:33:03

Re: Распространение в linux программ на FPC

Сообщение Ichthyander » 15.01.2018 14:09:53

Там еще может быть много чего... Права на исполняемый файл не так прописали. Расширение не то. К примеру, когда я пробовал запустить fast-cgi на сервере, то выяснилось, что апач нельзя запускать в режиме mpm-itk, как я привык это делать всегда до этого. Попробуйте запускать любое другое приложение CGI, которое гарантировано должно на этом сервере запустится или попробуйте запустить на сервере, на котором точно запустится Ваше cgi-приложение. Скорее всего дело не в компиляторе. Да, и у Вас случайно не виртуальный shared-хостинг? Тогда точно не будет запускаться
Аватара пользователя
Ichthyander
энтузиаст
 
Сообщения: 668
Зарегистрирован: 04.04.2007 08:32:43
Откуда: Астрахань

Re: Распространение в linux программ на FPC

Сообщение grot » 15.01.2018 14:16:17

Ichthyander писал(а):...Да, и у Вас случайно не виртуальный shared-хостинг? Тогда точно не будет запускаться


Да, это shared-хостинг ...

Помимо cgi-bin модуля, пробовал и обычное консольное "Hello, World !"
grot
новенький
 
Сообщения: 74
Зарегистрирован: 13.02.2010 16:33:03

Re: Распространение в linux программ на FPC

Сообщение Ichthyander » 15.01.2018 14:58:14

На виртуальных хостингах из соображений безопасности бинарники, как минимум, не будут работать. Скипты CGI только на некоторых будут запускаться после соответствующих настроек.
Просто арендуйте виртуальный или выделенный сервер. Они по цене как виртуальные хостинги. Я к примеру, на Hetzner беру, там дешевеле всего, дешевле чем у нас в РФ виртуальные shared хостинги и при этом нагрузку держат.
Аватара пользователя
Ichthyander
энтузиаст
 
Сообщения: 668
Зарегистрирован: 04.04.2007 08:32:43
Откуда: Астрахань

Re: Распространение в linux программ на FPC

Сообщение olegy123 » 15.01.2018 15:19:56

grot писал(а):Сейчас откомпилировал на 64-bit CentOS 7 (статически) простое консольное 64-bit "Hello, World !" -
на 64-bit Debian не запускается с какой-то абсолютно невнятной Run-time error...

Что делать и кто виноват ?
Линух 8) гарантирует что вызовы ядра будут общими.. Все. Остальное как в игре выживалки, как жить в этом мире зависит от вас.

Сейчас ходил к одним, они спрашивали меня как так производитель дает сырое ядро.. куча скриптов которые не работают. На что я сказал, что они выполнили пункт об GPL. Дальше вы берете "руки в ноги" и клепаете на свой страх и риск. Ну либо ищите специалистов здесь или там..

Вот такие "страх и ненависть" в корпоративной среде с OpenSource.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Распространение в linux программ на FPC

Сообщение grot » 15.01.2018 16:30:22

Ichthyander писал(а):...Просто арендуйте виртуальный или выделенный сервер...


Да есть у меня своих несколько VPS...

Просто прощупываю почву для некого решения для широких слоев пользователей, сидящих, обычно, на shared-hosting ...
grot
новенький
 
Сообщения: 74
Зарегистрирован: 13.02.2010 16:33:03

Re: Распространение в linux программ на FPC

Сообщение olegy123 » 15.01.2018 21:56:38

grot писал(а):Просто прощупываю почву для некого решения для широких слоев пользователей, сидящих, обычно, на shared-hosting ...
тогда имеет смысл линковать библиотеки статически.
Когда все будет находится в exe-нике.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Распространение в linux программ на FPC

Сообщение wofs » 15.01.2018 22:21:09

На самом деле варианта 2 - один тру, другой не очень тру :)
Вариант 1 (тру). Собрать пакет под целевую систему. В нем вы пропишете все требуемые зависимости и установщик автоматически все подтянет и поставит.
Вариант 2 (не очень тру). Создать .sh скрипт. Нечто вроде конфигурационного скрипта, который при первом запуске будет проверять наличие требуемых зависимостей и доставлять (или предупреждать) отсутствующие.

Первый вариант для Linux предпочтителен. Тем более, что собрать пакет не так уж и сложно.
Из опыта пользования Linux скажу, что сколь-нибудь сложные приложения не стоит распространять в так называемом portable варианте (читай вариант 3) - зачастую вместо двойного клика на пакете (или $sudo dpkg -i myprogram.deb) приходится плясать с бубном для запуска приложения.
Аватара пользователя
wofs
постоялец
 
Сообщения: 379
Зарегистрирован: 05.10.2009 10:16:55
Откуда: Астрахань

Re: Распространение в linux программ на FPC

Сообщение Ichthyander » 17.01.2018 11:43:12

Вставлю свою копейку )
По поводу 3-ех вариантов: с библиотеками или без, на виртуальном shared хостинге у него бинарники не запустятся. Скорее всего без вариантов.
А на сервере запустятся, думаю без проблем. Для широких слоев населения бинарник на сервер не лучшее решение. Если же эти "слои" пользователей достаточно продвинутые, то они могут поднять и админить виртуальный, как минимум, сервер.
Аватара пользователя
Ichthyander
энтузиаст
 
Сообщения: 668
Зарегистрирован: 04.04.2007 08:32:43
Откуда: Астрахань


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

Рейтинг@Mail.ru