Всем привет, я тут балуюсь, пишу прогу на Qt
у меня на локалке всё идеально пашет, но вот косяк, пытаюсь поместить на сервер, а там, извечная тема с линковкой Qt приложений.
В Линуксе, как представителе высшей ступени эволюции считывает шареды из специальной папки, а текущую напросто игнорит(зло).
У меня конечно же нет рута и я не могу править конфиги да и редактирование конфигов в моем случае лишний геморой который нафиг не нужен.
Соотвественно устанавливать пакеты я тоже не могу, есть только 3 .so файла которые не дают мне спокойно спать по ночам, все остальные либы на месте.

Я вижу 2 варианта:
1 перекомпиляция, (всё правлю руками, без qtCreater поэтому некоторые манулы совершенно не понимаю что куда писать)
2 это обёртка в виде баш скрипта, тут самое интересное решение
LD_LIBRARY_PATH = не работает

chrpath -d ./start.cgi = не совсем понимаю о чем речь, но тоже не работает.

что ещё можно придумать?

2 (08.04.2012 14:42:14 отредактировано Fat-Zer)

конкретики по библиотекам добавьте
и на сервере ls -l для *.so, которые с собой таскаете...
и проверьте, чтоб в флагах монтирования раздела с которого запускаете не стояло noexec

95% процентов проблем находятся между клавиатурой и стулом.

3 (08.04.2012 16:09:50 отредактировано Сергей)

Запускаю на сервере, в первую очередь интересны qt-шные библиотеки, они все находятся в той же папке (/home***):

ldd ./start.cgi|grep libQ
./start.cgi: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./start.cgi)
./start.cgi: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./start.cgi)
    libQtSql.so.4 => not found
    libQtGui.so.4 => not found
    libQtCore.so.4 => not found

LS -L
-rwxrwxrwx  1 hostuser hostuser 253168 Apr  8 13:17 libQtSql.so*

на всех 777 сейчас, executable

В моем разделе нет noexec ибо до подключения Qt всё отлично жевалось.

4

Сергей пишет:

./start.cgi: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./start.cgi)
./start.cgi: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./start.cgi)

судя по этому трабла ещё и в том, что libstdc++ старая на сервере.

Сергей пишет:

ldd ./start.cgi|grep libQ

а теперь тоже самой только с предварительным export LD_LIBRARY_PATH="/путь/к/либам/Qt/:$LD_LIBRARY_PATH".

ЗЫ:вообще это не дело без root'а добавлять в систему какие-то доп. бинарники, а тем более библиотеки.
ЗЗЫ: пользуйтесь тегами code

95% процентов проблем находятся между клавиатурой и стулом.

5

Супер!!! кстати там ещё один маленький косяк случился, который я сначала не обратил внимание это .so.4
изначально думал, что это какое-то специальное обозначение, а оказывается существует такой файл ab

с версией libstdc++. вопрос аналогично решен переносом  благо либа меньше метра весит ab

Огромное спасибо тебе за помощь в решении моего вопроса ab