Какие параметры для запуска на другом компьютере?

Общие вопросы программирования, алгоритмы и т.п.

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

Ответить
gringo
незнакомец
Сообщения: 5
Зарегистрирован: 10.02.2015 10:37:27

Какие параметры для запуска на другом компьютере?

Сообщение gringo »

Какие параметры проекта задавать чтобы программу можно было запустить на другом компьютере?
Что нужно указать в настройках дополнительно при компиляции чтобы все нужные библиотеки были включены в программу при сборке? Для запуска программы на другом компьютере где не установлен лазарус. Программирование под линукс
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

Программа, в случае отсутствия особых зависимостей, спокойно запускается на другом компьютере. Исключение составляют случаи работы с базами данных... возможно, некоторые другие. Все библиотечные модули включены в программу. Для внешних библиотек нужно указать зависимости в инсталляторе. Рунтайм библиотек не предусмотрено.
dedm0zaj
постоялец
Сообщения: 108
Зарегистрирован: 05.10.2012 19:55:20

Сообщение dedm0zaj »

fpc, в отличии от gcc, по умолчанию имеет статическую линковку, т.е. всё будет включено в бинарник, кроме конечно *.so библиотек.
gringo
незнакомец
Сообщения: 5
Зарегистрирован: 10.02.2015 10:37:27

Сообщение gringo »

делаю эксперимент. в линуксе создаю проект и компилирую произвольное приложение. потом меняю расположение папки (переношу в нелинуксовый раздел - не знаю важно это или нет, по идее должно быть параллельно) с проектом и меняю название папки. пытаюсь из под линукса запустить приложение и оно не запускается. в билдере - чтобы приложение можно было переносить на другой комп нужно при компиляции опции указать чтобы включить все библиотеки в исполняемый файл или проект. так что я думаю тут такая же ситуация. нужно какие-то опции указывать дополнительно при компиляции. а вот какие? это вопрос!
wavebvg
постоялец
Сообщения: 355
Зарегистрирован: 28.02.2008 03:57:35

Сообщение wavebvg »

Права на запуск при этом сохраняются?
Вы уверены, что переносите бинарный файл?
gringo
незнакомец
Сообщения: 5
Зарегистрирован: 10.02.2015 10:37:27

Сообщение gringo »

wavebvg писал(а):Права на запуск при этом сохраняются?
Вы уверены, что переносите бинарный файл?

на счет прав - там все по умолчанию. я права никакие нигде не менял. просто перенес и запустил.

я переносил не файл, а всю папку с проектом
Аватара пользователя
Helltar
новенький
Сообщения: 22
Зарегистрирован: 11.07.2013 02:28:53
Контактная информация:

Сообщение Helltar »

переношу в нелинуксовый раздел

Если перенести на NTFS например, права на запуск и тд. слетят.
gringo
незнакомец
Сообщения: 5
Зарегистрирован: 10.02.2015 10:37:27

Сообщение gringo »

Helltar писал(а):Если перенести на NTFS например, права на запуск и тд. слетят.


хитро придумано. но не очень удобно.

чтобы снова запустить программу надо переместить её в линуксовый раздел и перекомпилировать её заново. при переноске проги с одного компа на другой к примеру пользователь может её случайно положить в произвольную папку любой файловой системы. и не имея доступа к исходнику потом её не сможет запустить. очень неудобно на мой взгляд
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

gringo писал(а):хитро придумано. но не очень удобно.


:D :D :D О да это очень хитрый и коварный заговор, компания Микрософт по каким то никому непонятным причинам не предусматрела в своей NTFS флаги свойств характерные для операционных систем Linux... и в итоге, в виду того что этим свойствам храниться в NTFS негде, они "слетают".

Что бы запустить программу, переместите её бинарник на родную ФС, в файловом менеджере вызовите свойства файла и найдите там галочку с надписью ~ "Исполняемый файл" (дословно не скажу, зависит от вашего файлового менеджера и локализации).
SSerge
энтузиаст
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Сообщение SSerge »

gringo писал(а):чтобы снова запустить программу надо переместить её в линуксовый раздел и перекомпилировать её заново


Ага, щас. На самом деле достаточно chmod +x filename чтобы файл стал снова исполнимым.

gringo писал(а):хитро придумано. но не очень удобно.


Если учесть, что эта файловая система еще совсем не давно не поддерживалась на запись, а кое где на самых правильных компьютерах - до сих пор не поддерживается, так можно радоваться что хоть так работает. Что делает на линуксовой машине раздел с NTFS? Вот зачем он там?
dedm0zaj
постоялец
Сообщения: 108
Зарегистрирован: 05.10.2012 19:55:20

Сообщение dedm0zaj »

gringo писал(а):чтобы снова запустить программу надо переместить её в линуксовый раздел и перекомпилировать её заново


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

тут уже объяснили, но я тоже попробую.
в линуксе у файлов есть некоторые привилегии. эти привилегии мы можем менять в свойствах файла. одна из таких привилегий это способность файла запускаться, как exe в винде. когда файл переносишь на NTFS, эта привилегия слетает и нужно в свойствах её заново выставить.
gringo
незнакомец
Сообщения: 5
Зарегистрирован: 10.02.2015 10:37:27

Сообщение gringo »

всем спасибо за ответы. причина теперь понятна. заходишь в свойства исполняемого файла и там ставишь галочку на пункте "выполняемый файл" и все. эта галочка выключается когда папка с проектом оказывается в разделе NTFS, как уже выше товарищи правильно объяснили )
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

gringo писал(а):хитро придумано. но не очень удобно.


Иногда, когда сидишь в 2х и более системах, это очень удобно. Позволяет избежать некоторого геморроя с доступом к файлам.
Ответить