Вы должны убедиться, что на сервере есть библиотеки, на которые ссылается ваше приложение, или статически связывать их, как уже предлагали другие.В некоторых других комментариях указывается, что вам нужно «кросс-компилировать» или что сервер не будет работать с 64-битными двоичными файлами.Это легко решить, если приложение, которое вы создаете, не очень сложное.
gnatmake --GCC = 'gcc -m32'
Создает двоичный файл, который будет работать в 32-битной системе.Тем не менее, главная проблема в том, что серверы (g) libc, скорее всего, будут старше, чем то, что есть на вашем компьютере с ubunu.Программы, скомпилированные с более новым glibc, не обязательно будут работать в системах с установленным более старым glibc.
для получения дополнительной информации и большого количества ссылок, смотрите здесь:
Связывание со старой версией libc для обеспечения большего охвата приложения
Как я могуссылка на конкретную версию glibc?
edit: Кроме того, apache может не быть настроен на прием внешних двоичных файлов.Вы пытались запустить программу с тем, что, как вы знаете, существует на сервере?Попробуйте запустить что-нибудь тривиальное, например / bin / ls, чтобы убедиться, что ваш метод запуска программы работает.Посмотрите логи, если они не работают.Программы должны быть исполняемыми, кстати: chmod 755 / path / to / webeserver / uploads / ada-app