The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"трабла"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"трабла" 
Сообщение от sproot Искать по авторуВ закладки(ok) on 21-Фев-05, 06:12  (MSK)
Стоит Apache+mod_perl. Из перл скрипта выполняю команду:
$data=`/opt/apache2/sites/reg 1 root\@ppp.ru`;
переменная $data пустая
если выполнить тоже самое под юзером под которым запущен apache на stdout
выводится то что и должно выводится.
reg-откомпилированная программа написаная на C
Вопрос:
Почему в переменную $data не записывается stdout выполнения программы reg ?
  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

  • трабла, sproot, 07:08 , 21-Фев-05, (1)  
    • трабла, ACCA, 09:02 , 21-Фев-05, (2)  
      • трабла, sproot, 09:09 , 21-Фев-05, (3)  
        • трабла, sproot, 09:10 , 21-Фев-05, (4)  
          • трабла, ACCA, 19:14 , 24-Фев-05, (5)  

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "трабла" 
Сообщение от sproot Искать по авторуВ закладки(ok) on 21-Фев-05, 07:08  (MSK)
>Стоит Apache+mod_perl. Из перл скрипта выполняю команду:
>$data=`/opt/apache2/sites/reg 1 root\@ppp.ru`;
>переменная $data пустая
>если выполнить тоже самое под юзером под которым запущен apache на stdout
>
>выводится то что и должно выводится.
>reg-откомпилированная программа написаная на C
>Вопрос:
>Почему в переменную $data не записывается stdout выполнения программы reg ?
Уточнение.

[root@sproot sites]# su - www -c '/opt/apache2/sites/run.sh'
/opt/apache2/sites/run.sh: line 2:  6262 Segmentation fault      /opt/apache2/sites/reg 1 ggg

А если
[root@sproot sites]# su www -c '/opt/apache2/sites/run.sh'
то все работает

run.sh:
#!/bin/bash
/opt/apache2/sites/reg 1 ggg

Где я ошибаюсь ?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "трабла" 
Сообщение от ACCA Искать по авторуВ закладки(ok) on 21-Фев-05, 09:02  (MSK)
>[root@sproot sites]# su - www -c '/opt/apache2/sites/run.sh'
>/opt/apache2/sites/run.sh: line 2:  6262 Segmentation fault      
>/opt/apache2/sites/reg 1 ggg
>
>А если
>[root@sproot sites]# su www -c '/opt/apache2/sites/run.sh'
>то все работает
>
>run.sh:
>#!/bin/bash
>/opt/apache2/sites/reg 1 ggg
>
>Где я ошибаюсь ?


Похоже, что у тебя Linux и проблема - в динамических библиотеках.

Либо статически слинкуй reg, либо с помощью ldconfig укажи, где ему искать
динамические библиотеки.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "трабла" 
Сообщение от sproot Искать по авторуВ закладки(ok) on 21-Фев-05, 09:09  (MSK)
>>[root@sproot sites]# su - www -c '/opt/apache2/sites/run.sh'
>>/opt/apache2/sites/run.sh: line 2:  6262 Segmentation fault      
>>/opt/apache2/sites/reg 1 ggg
>>
>>А если
>>[root@sproot sites]# su www -c '/opt/apache2/sites/run.sh'
>>то все работает
>>
>>run.sh:
>>#!/bin/bash
>>/opt/apache2/sites/reg 1 ggg
>>
>>Где я ошибаюсь ?
>
>
>Похоже, что у тебя Linux и проблема - в динамических библиотеках.
>
>Либо статически слинкуй reg, либо с помощью ldconfig укажи, где ему искать
>
>динамические библиотеки.
Я не использовал какие-либо внешние библиотеки

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "трабла" 
Сообщение от sproot Искать по авторуВ закладки(ok) on 21-Фев-05, 09:10  (MSK)
>>>[root@sproot sites]# su - www -c '/opt/apache2/sites/run.sh'
>>>/opt/apache2/sites/run.sh: line 2:  6262 Segmentation fault      
>>>/opt/apache2/sites/reg 1 ggg
>>>
>>>А если
>>>[root@sproot sites]# su www -c '/opt/apache2/sites/run.sh'
>>>то все работает
>>>
>>>run.sh:
>>>#!/bin/bash
>>>/opt/apache2/sites/reg 1 ggg
>>>
>>>Где я ошибаюсь ?
>>
>>
>>Похоже, что у тебя Linux и проблема - в динамических библиотеках.
>>
>>Либо статически слинкуй reg, либо с помощью ldconfig укажи, где ему искать
>>
>>динамические библиотеки.
>Я не использовал какие-либо внешние библиотеки
мой Makefile
reg :   reg_new.c
        gcc reg_new.c -O2 -Wall -o reg
Я что-то изменил Segmentation fault больше не появляется но и вывода программы тоже нет :(
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "трабла" 
Сообщение от ACCA Искать по авторуВ закладки(ok) on 24-Фев-05, 19:14  (MSK)
>>Я не использовал какие-либо внешние библиотеки
>мой Makefile
>reg :   reg_new.c
>        gcc reg_new.c -O2 -Wall -o reg

Запусти  gcc -print-libgcc-file-name
ты собрал минимум с этой библиотекой. Я не скажу сразу, кого ещё она может подключить.

Запусти gcc -print-search-dirs
в секции libraries: перечислены каталоги, где могут быть ещё библиотеки, которые могут подключаться автоматически.

Твой reg должен правильно работать при
su - www -c '/opt/apache2/sites/run.sh'

Если не хочешь разбираться с ldconfig, сделай
gcc reg_new.c -O2 -Wall -static -o reg

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру