Всем привет! В качестве ОС использую Runtu LXDE. Скомпилил из исходников телефон Linphone 3.4.3. Всё отлично, запускаю через linphonec и могу звонить и принимать звонки. Но тут появилась необходимость запускать его как демон и управлять по событиям. У него есть бинарник linphonecsh. Но при попытке регистрации через него получаю:
Если же установить Linphone 3.3 через менеджер пакетов, то демон прекрасно запускается и работает( Но мне так не подходит, поскольку потом этот телефон(3.4.2) будет запускаться на ARM линуксе.
Гугление выдало всего пару ссылок без решения проблемы:(
sasha@sasha-desktop:~/linphone-pc-working-home/install/usr/bin$ export LD_LIBRARY_PATH=/home/sasha/linphone-pc-working-home/install/usr/lib
sasha@sasha-desktop:~/linphone-pc-working-home/install/usr/bin$ strace -e open ./linphonecsh init
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/i686/sse2/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/i686/sse2/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/i686/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/i686/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/sse2/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/sse2/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/tls/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/i686/sse2/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/i686/sse2/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/i686/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/i686/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/sse2/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/sse2/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/cmov/libortp.so.8", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libortp.so.8", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libeXosip2.so.6", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libosip2.so.6", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libvorbis.so.0", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libvorbisenc.so.2", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libspeexdsp.so.1", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libogg.so.0", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libosipparser2.so.6", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libasound.so.2", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libpthread.so.0", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libm.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libm.so.6", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libnsl.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libnsl.so.1", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/librt.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/librt.so.1", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libresolv.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libresolv.so.2", O_RDONLY) = 3
open("/home/sasha/linphone-pc-working-home/install/usr/lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libdl.so.2", O_RDONLY) = 3
сейчас не в библиотеках дело, а куда он после демонизации тыкается... надо добавить ключ -f, чтобы strace был с ним до победного конца...
и если linphonecsh это скрипт, то посмотрите его содержимое - лучше сразу запускать бинарник...
...
13742 execve("/usr/local/sbin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 36 vars */]) = -1 ENOENT (No such file or directory)
13742 execve("/usr/local/bin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 36 vars */]) = -1 ENOENT (No such file or directory)
13742 execve("/usr/sbin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 36 vars */]) = -1 ENOENT (No such file or directory)
13742 execve("/usr/bin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 36 vars */]) = 0
13742 brk(0) = 0x86f0000
13742 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
13742 mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7761000
13742 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
...
И дальше идет немереное количество строк
При запуске моего скомпилированного Linphone, strace останавливается на таком моменте:
text
execve("/usr/local/sbin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/local/bin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/sbin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/bin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
execve("/sbin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
execve("/bin/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/games/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
write(2, "Fail to spawn linphonec: No such"..., 51) = 51
exit_group(-1) = ?
Process 13354 detached
не суть... скорей всего 37-я это LD_LIBRARY_PATH, которую вы экспортируете...
"godor2008" написал:
execve("/usr/games/linphonec", ["linphonec", "--pipe", "-c", "/dev/null"], [/* 37 vars */]) = -1 ENOENT (No such file or directory)
"~/linphone-pc-working-home/install/usr/bin" (или какой там путь к linphonec?) должна быть в $PATH и желательно первой, чтобы исключить конфликт с установленной версией.