Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: linphone. ARM.
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
jacuba
Добрый день, возникла следующая проблема:
при попытке скомпилировать linphone на машине с i686 для машины с ARM-архитектурой:
Код
$cd linphone-3.4.3
$sudo ./configure --prefix=/home/user/armbuild --host=i686-pc-linux --target=arm-linux --disable-static --disable-glib --enable-gnome_ui=no --disable-manual --enable-alsa --with-speex=/home/user/speex


Конфигурация проходит успешно, но в конце получаю предупреждение:
Цитата
configure: WARNING: ortp-0.15.0 breaks compatibility with older releases, because value returned by rtp_session_recvm_with_ts() has
changed. See the API documentation in doc/ for further readings.
Linphone build configuration ended.
* GTK interface will be compiled.
* Console interface will be compiled.
Now type 'make' to compile, and then 'make install' as root to install it.


После этого делаю sudo make и получаю ошибку:
Код
CCLD   mediastream
../src/.libs/libmediastreamer.so: undefined reference to `speex_echo_cancellation'
../src/.libs/libmediastreamer.so: undefined reference to `speex_echo_state_init'
../src/.libs/libmediastreamer.so: undefined reference to `speex_preprocess_state_destroy'
../src/.libs/libmediastreamer.so: undefined reference to `speex_preprocess_state_init'
../src/.libs/libmediastreamer.so: undefined reference to `speex_echo_ctl'
../src/.libs/libmediastreamer.so: undefined reference to `speex_echo_state_destroy'
../src/.libs/libmediastreamer.so: undefined reference to `speex_preprocess_ctl'
../src/.libs/libmediastreamer.so: undefined reference to `speex_preprocess_run'
collect2: ld returned 1 exit status
make[4]: *** [mediastream] Ошибка 1
make[4]: Leaving directory `/home/user/linphone-3.4.3/mediastreamer2/tests'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Leaving directory `/home/user/linphone-3.4.3/mediastreamer2'
make[2]: *** [all] Ошибка 2
make[2]: Leaving directory `/home/user/linphone-3.4.3/mediastreamer2'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/home/user/linphone-3.4.3'
make: *** [all] Ошибка 2


Собственно это и вызывает затруднение, откуда такая ошибка и как можно от нее избавиться?
Заранее благодарен.

Petka
Цитата(jacuba @ Apr 5 2011, 08:57) *
Добрый день, возникла следующая проблема:
...
../src/.libs/libmediastreamer.so: undefined reference to `speex_echo_cancellation'
...
Собственно это и вызывает затруднение, откуда такая ошибка и как можно от нее избавиться?

Очевидно в библиотеке speex отсутствуют такие функции. Либо не та версия библиотеки, либо вы её неправильно собрали.
P.S. тему лучше перенести в OpenSource раздел
jacuba
Petka, спасибо за ответ,
ранее я скачивал speex отсюда и собирал следующим образом:
Код
$cd ../speex-1.1.11.1
$./configure --prefix=/home/user/armbuild --host=i686-pc-linux --target=arm-linux
--disable-static --enable-fixed-point --enable-arm-asm  
$make
$make install


Сейчас я поставил пакеты: libogg-ocaml, libogg-ocaml-dev, libspeex-ocaml, libspeex-ocaml-dev, libspeexdsp-dev из репозитариев - проблема решилась. Большое спасибо.
jacuba
появилась еще одна проблема: при компиляции speex получаю следующее сообщение
Код
root@debian:/home/user/arm1/speex-1.2beta2# make
make  all-recursive
make[1]: Entering directory `/home/user/arm1/speex-1.2beta2'
Making all in libspeex
make[2]: Entering directory `/home/user/arm1/speex-1.2beta2/libspeex'
/bin/bash ../libtool --mode=link arm-unknown-linux-uclibcgnueabi-gcc  -g -O2   -o testenc  testenc.o libspeex.la -lm
arm-unknown-linux-uclibcgnueabi-gcc -g -O2 -o .libs/testenc testenc.o  ./.libs/libspeex.so -lm
testenc.o: In function `fprintf':
/usr/include/bits/stdio2.h:98: undefined reference to `__fprintf_chk'
/usr/include/bits/stdio2.h:98: undefined reference to `__fprintf_chk'
/usr/include/bits/stdio2.h:98: undefined reference to `__fprintf_chk'
./.libs/libspeex.so: undefined reference to `__printf_chk'
collect2: ld returned 1 exit status
make[2]: *** [testenc] Ошибка 1
make[2]: Leaving directory `/home/user/arm1/speex-1.2beta2/libspeex'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/home/user/arm1/speex-1.2beta2'
make: *** [all] Ошибка 2


гугл ничего про это не знает
уважаемые, помогите разобраться.
Petka
Цитата(jacuba @ Apr 6 2011, 15:27) *
...
/usr/include/bits/stdio2.h:98: undefined reference to `__fprintf_chk'
...
уважаемые, помогите разобраться.

Похоже неправильно сконфигурировали speex для кросс-компиляции. При сборке вместо uclibc тянутся хэдеры локальной (хостовой) машины, а на ней наверняка glibc.
jacuba
Проблема решилась путем установки компилятора в /usr

Теперь при попытки конфигурирования самого libphone получаю сообщение:
Код
# ./configure --prefix=/usr --host=arm-linux --with-gnu-ld --disable-static \
        --disable-glib --with-osip=$ARM_INSTALL_TREE/usr \
    --with-readline=$ARM_INSTALL_TREE/usr \
        SPEEX_CFLAGS="-I$ARM_INSTALL_TREE/usr/include" \
        SPEEX_LIBS="-L$ARM_INSTALL_TREE/usr/lib -lspeex "

...
checking eXosip2/eXosip.h usability... no
checking eXosip2/eXosip.h presence... no
checking for eXosip2/eXosip.h... no
configure: error: Could not find eXosip2 headers !


Делаю вывод, что хидеры не могут быть найдены потому что их просто нет.
Принимаю решение установить libexosip. Скачиваю и распаковываю.
Код
# cd ../libeXosip2-3.5.0/
# ./configure --prefix=/usr --host=arm-linux --with-gnu-ld --disable-static
#  make
...
eXosip.c: In function `_eXosip_transaction_init':
eXosip.c:76: error: `osip_srv_record_t' undeclared (first use in this function)
eXosip.c:76: error: (Each undeclared identifier is reported only once
eXosip.c:76: error: for each function it appears in.)
eXosip.c:76: error: parse error before "record"
eXosip.c:84: error: `record' undeclared (first use in this function)
eXosip.c:88: error: `OSIP_SUCCESS' undeclared (first use in this function)
eXosip.c:90: warning: implicit declaration of function `osip_transaction_set_srv_record'
eXosip.c: In function `eXosip_transaction_find':
eXosip.c:106: error: `OSIP_SUCCESS' undeclared (first use in this function)
eXosip.c:110: error: `OSIP_NOTFOUND' undeclared (first use in this function)
eXosip.c: In function `_eXosip_retry_with_auth':
eXosip.c:130: error: `OSIP_BADPARAMETER' undeclared (first use in this function)
eXosip.c:134: error: `OSIP_UNDEFINED_ERROR' undeclared (first use in this function)
eXosip.c:154: warning: passing arg 1 of `osip_list_get' from incompatible pointer type
eXosip.c:160: error: `OSIP_SYNTAXERROR' undeclared (first use in this function)
eXosip.c:1430: warning: passing arg 1 of `osip_list_add' from incompatible pointer type
eXosip.c: In function `eXosip_update_top_via':
eXosip.c:1464: warning: passing arg 1 of `osip_list_get' from incompatible pointer type
eXosip.c:1470: error: `OSIP_SYNTAXERROR' undeclared (first use in this function)
eXosip.c:1487: error: `OSIP_SUCCESS' undeclared (first use in this function)
make[2]: *** [eXosip.lo] Ошибка 1
make[2]: Leaving directory `/root/arm1/libeXosip2-3.5.0/src'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/root/arm1/libeXosip2-3.5.0'
make: *** [all] Ошибка 2


какова причина возникновения этих ошибок? Прошу у вас помощи.
Petka
Цитата(jacuba @ Apr 7 2011, 10:01) *
Проблема решилась путем установки компилятора в /usr

Теперь при попытки конфигурирования самого libphone получаю сообщение:
Код
# ./configure --prefix=/usr

....
какова причина возникновения этих ошибок? Прошу у вас помощи.

1) ИМХО --prefix НЕ надо при кросс-компиляции прописывать в /usr пропишите куда-нить в личный /home аналогично ARM_INSTALL_TREE
2) при компиляции (make) не выдавались-ли сообщения о ненайденых incude ?
jacuba
кхм... Наверно вот здесь и таится ошибка.
Но я все равно не понимаю, как это исправить.
Код
...
In file included from eXosip.c:25:
eXosip2.h:56:24: osip2/osip.h: Нет такого файла или каталога
eXosip2.h:57:31: osip2/osip_dialog.h: Нет такого файла или каталога
In file included from ../include/eXosip2/eXosip.h:28,
                 from eXosip2.h:59,
                 from eXosip.c:25:
../include/eXosip2/eX_setup.h:29:38: osipparser2/osip_message.h: Нет такого файла или каталога
In file included from ../include/eXosip2/eXosip.h:28,
                 from eXosip2.h:59,
                 from eXosip.c:25:
../include/eXosip2/eX_setup.h:107: error: parse error before "osip_proxy_authenticate_t"
../include/eXosip2/eX_setup.h:107: warning: no semicolon at end of struct or union
../include/eXosip2/eX_setup.h:111: error: parse error before '}' token
../include/eXosip2/eX_setup.h:200: error: parse error before '*' token
../include/eXosip2/eX_setup.h:269: error: parse error before '*' token
In file included from ../include/eXosip2/eXosip.h:29,
                 from eXosip2.h:59,
                 from eXosip.c:25:
../include/eXosip2/eX_register.h:28:37: osipparser2/osip_parser.h: Нет такого файла или каталога
In file included from ../include/eXosip2/eXosip.h:29,
                 from eXosip2.h:59,
                 from eXosip.c:25:
...
Petka
Цитата(jacuba @ Apr 7 2011, 11:32) *
кхм... Наверно вот здесь и таится ошибка.
Но я все равно не понимаю, как это исправить.
Код
...
In file included from eXosip.c:25:
eXosip2.h:56:24: osip2/osip.h: Нет такого файла или каталога
...

Посмотрите с какими ключами зачускается компилятор перед выдачей таких ошибок. В ключе "-I" должны содержаться пути к необходимым хедерам. Проверьте наличие этих хедеров. Сконфигурируйте библиотеку так, что бы при компиляции эти пути указывали на необходимые каталоги.
jacuba
При конфигурации самого linphon получаю сообщение:
Код
# ./configure --prefix=/root/armbuild --host=arm-linux --disable-static --disable-glib --enable-gnome_ui=no --disable-manual --enable-ipv6 --enable-alsa --with-osip=/armbuild/usr --with-speex=/armbuild/usr

checking for eXosip2/eXosip.h... yes
checking for eXosip_subscribe_remove in -leXosip2... no
configure: error: Could not find eXosip2 library with version >= 3.0.2 !


Начинаю ставить libeXosip2-3.0.3
Прошу меня проверить:
Код
# cd libeXosip2-3.0.3
#  ./configure --host=arm-linux --prefix=/armbuild
...
Entering directory `/home/user/Загрузки/libeXosip2-3.0.3/src'
if /bin/bash ../libtool --tag=CC --mode=compile arm-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../include -I/armbuild/include  -Wall -Wcast-align -Wchar-subscripts -Wformat -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -DOSIP_MT -DENABLE_DEBUG -g -DENABLE_TRACE -g   -pthread -g  -MT eXosip.lo -MD -MP -MF ".deps/eXosip.Tpo" -c -o eXosip.lo eXosip.c; \
        then mv -f ".deps/eXosip.Tpo" ".deps/eXosip.Plo"; else rm -f ".deps/eXosip.Tpo"; exit 1; fi
mkdir .libs
arm-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../include -I/armbuild/include -Wall -Wcast-align -Wchar-subscripts -Wformat -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -DOSIP_MT -DENABLE_DEBUG -g -DENABLE_TRACE -g -pthread -g -MT eXosip.lo -MD -MP -MF .deps/eXosip.Tpo -c eXosip.c  -fPIC -DPIC -o .libs/eXosip.o
In file included from eXosip.c:25:
eXosip2.h:56:24: osip2/osip.h: No such file or directory
eXosip2.h:57:31: osip2/osip_dialog.h: No such file or directory


osip2/osip.h лежал в /armbuild/include, на всякий случай я скопировал всю папку osip2 в /usr/include
Правильно ли я сделал?
по прежнему получаю кучу сообщений типа:
Код
eXosip.c: In function `_eXosip_transaction_init':
eXosip.c:83: warning: implicit declaration of function `osip_transaction_init'
eXosip.c:83: error: `transaction' undeclared (first use in this function)
eXosip.c:83: error: (Each undeclared identifier is reported only once
eXosip.c:83: error: for each function it appears in.)
eXosip.c:83: error: `ctx_type' undeclared (first use in this function)
eXosip.c:83: error: `osip' undeclared (first use in this function)
eXosip.c:83: error: `message' undeclared (first use in this function)
eXosip.c: At top level:
eXosip.c:101: error: parse error before "osip_transaction_t"
eXosip.c:102: warning: no previous prototype for `eXosip_transaction_find'
eXosip.c: In function `eXosip_transaction_find':
eXosip.c:105: error: `transaction' undeclared (first use in this function)
eXosip.c:106: warning: implicit declaration of function `osip_list_eol'
eXosip.c:106: error: invalid use of incomplete typedef `eXosip_t'
eXosip.c:108: error: `osip_transaction_t' undeclared (first use in this function)
eXosip.c:108: error: `tr' undeclared (first use in this function)
eXosip.c:110: error: parse error before ')' token
eXosip.c: At top level:
eXosip.c:124: error: parse error before "osip_transaction_t"
eXosip.c: In function `_eXosip_retry_with_auth':
eXosip.c:127: error: `osip_transaction_t' undeclared (first use in this function)
eXosip.c:127: error: `out_tr' undeclared (first use in this function)
eXosip.c:128: error: `tr' undeclared (first use in this function)
eXosip.c:129: error: `osip_message_t' undeclared (first use in this function)
eXosip.c:129: error: `msg' undeclared (first use in this function)
eXosip.c:130: error: `osip_event_t' undeclared (first use in this function)
eXosip.c:130: error: `sipevent' undeclared (first use in this function)
eXosip.c:134: error: `osip_via_t' undeclared (first use in this function)
eXosip.c:134: error: `via' undeclared (first use in this function)
eXosip.c:137: error: `ptr' undeclared (first use in this function)
eXosip.c:140: error: `jd' undeclared (first use in this function)
eXosip.c:152: error: `retry' undeclared (first use in this function)
eXosip.c:155: warning: implicit declaration of function `osip_message_clone'
eXosip.c:158: warning: implicit declaration of function `OSIP_TRACE'
...
eXosip.c:474: error: `osip_transaction_t' undeclared (first use in this function)
eXosip.c:474: error: `out_tr' undeclared (first use in this function)
eXosip.c:476: warning: implicit declaration of function `osip_list_get'
eXosip.c:476: error: dereferencing pointer to incomplete type
eXosip.c:478: error: dereferencing pointer to incomplete type
eXosip.c:480: error: dereferencing pointer to incomplete type
eXosip.c:482: error: dereferencing pointer to incomplete type
eXosip.c:492: error: `OSIP_ERROR' undeclared (first use in this function)
eXosip.c:500: error: invalid use of incomplete typedef `eXosip_t'
eXosip.c:500: error: dereferencing pointer to incomplete type
...
eXosip.c:1138: error: dereferencing pointer to incomplete type
eXosip.c:1143: error: dereferencing pointer to incomplete type
eXosip.c:1144: error: dereferencing pointer to incomplete type
eXosip.c:1164: warning: implicit declaration of function `osip_message_get_www_authenticate'
eXosip.c:1165: warning: implicit declaration of function `osip_message_get_proxy_authenticate'
eXosip.c:1218: error: `osip_generic_param_t' undeclared (first use in this function)
eXosip.c:1218: error: `to_tag' undeclared (first use in this function)
eXosip.c:1219: warning: implicit declaration of function `osip_from_param_get_byname'
eXosip.c:1248: error: `OSIP_INFO1' undeclared (first use in this function)
eXosip.c: At top level:
eXosip.c:1297: error: parse error before '*' token
eXosip.c:1298: warning: no previous prototype for `eXosip_update_top_via'
eXosip.c: In function `eXosip_update_top_via':
eXosip.c:1301: error: `osip_generic_param_t' undeclared (first use in this function)
eXosip.c:1301: error: `br' undeclared (first use in this function)
eXosip.c:1302: error: `osip_via_t' undeclared (first use in this function)
eXosip.c:1302: error: `via' undeclared (first use in this function)
eXosip.c:1302: error: parse error before ')' token
eXosip.c:1307: error: `OSIP_ERROR' undeclared (first use in this function)
eXosip.c:1312: warning: implicit declaration of function `osip_via_param_get_byname'
eXosip.c:1323: warning: implicit declaration of function `osip_build_random_number'
eXosip.c:1326: warning: implicit declaration of function `osip_strdup'
Petka
Цитата(jacuba @ Apr 11 2011, 13:51) *
....
Прошу меня проверить:
# cd libeXosip2-3.0.3
# ./configure --host=arm-linux --prefix=/armbuild
...
arm-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../include -I/armbuild/include -Wall -Wcast-align -Wchar-subscripts -Wformat -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-
....
eXosip2.h:56:24: osip2/osip.h: No such file or directory
....
osip2/osip.h лежал в /armbuild/include, на всякий случай я скопировал всю папку osip2 в /usr/include

Быть такого не может. вы что, прямо в корень /armbuild положили?
Даже если он там лежит компилятор не может не найти хедеров.
jacuba
Да, armbuild лежит прямо в корне.

Только что проверил все пути установки, понял, что хидеры linphone искал не там - поправил - частично помогло.
Спасибо, Petka, ты единственный, кто проявляет интерес к этой теме на этом форумеsm.gif
jacuba
Я добился того, что linphone сконфигурировался и теперь приступаю к компиляции:
Код
# make
...
libtool: compile:  arm-linux-gcc -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_REENTRANT -I.. -g -O2 -Wall -Werror -DORTP_INET6 -MT b64.lo -MD -MP -MF .deps/b64.Tpo -c b64.c  -fPIC -DPIC -o .libs/b64.o
b64.c: In function `b64_encode_':
b64.c:209: warning: comparison is always true due to limited range of data type
b64.c:210: warning: comparison is always true due to limited range of data type
b64.c:211: warning: comparison is always true due to limited range of data type
b64.c:212: warning: comparison is always true due to limited range of data type
make[5]: *** [b64.lo] Ошибка 1
make[5]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP/src'
make[4]: *** [all-recursive] Ошибка 1
make[4]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP/src'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP'
make[2]: *** [all] Ошибка 2
make[2]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/root/arm1/linphone-3.4.3'
make: *** [all] Ошибка 2


В какую сторону копать?
Petka
Цитата(jacuba @ Apr 12 2011, 10:25) *
Я добился того, что linphone сконфигурировался и теперь приступаю к компиляции:
...
libtool: compile: arm-linux-gcc -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_REENTRANT -I.. -g -O2 -Wall -Werror -DORTP_INET6 -MT b64.lo -MD -MP -MF .deps/b64.Tpo -c b64.c -fPIC -DPIC -o .
b64.c:209: warning: comparison is always true due to limited range of data type
...
make[5]: *** [b64.lo] Ошибка 1
...
В какую сторону копать?

Ключ -Werror "превращает" варнинги в ошибки.
Тут уже надо копать снова либо в конфигурацию библиотеки (судя по ошибке надо то ли включить, то ли отключить поддержку 64 бит. Хотя я не уверен.) Либо это бага в библиотеке. Можете попробовать в makefile убрать ключи "-Werror".
jacuba
Я открыл файл b64.c и закоментировал строки 209-212.
Данная проблема решилась. Спасибо.
jacuba
Задам еще вопрос.
Компилирую linphone, получаю ошибку:
Код
...
make  all-am
make[5]: Entering directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src'
  CC     mscommon.lo
  CC     msfilter.lo
msfilter.c: In function `get_cur_time_ns':
msfilter.c:257: error: `CLOCK_MONOTONIC' undeclared (first use in this function)
msfilter.c:257: error: (Each undeclared identifier is reported only once
msfilter.c:257: error: for each function it appears in.)
make[5]: *** [msfilter.lo] Ошибка 1
make[5]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src'
make[4]: *** [all] Ошибка 2
make[4]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2'
make[2]: *** [all] Ошибка 2
make[2]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/home/user/linphone-34/linphone-3.4.3'
make: *** [all] Ошибка 2


предполагаю, что если закоментировать и эти строки, то ошибка пропадетsm.gif но это плохое решение. От чего возникают подобные ошибки?
Petka
Цитата(jacuba @ Apr 13 2011, 08:42) *
Задам еще вопрос.
Компилирую linphone, получаю ошибку:
Код
...
make  all-am
...
msfilter.c: In function `get_cur_time_ns':
...
make: *** [all] Ошибка 2


предполагаю, что если закоментировать и эти строки, то ошибка пропадетsm.gif но это плохое решение. От чего возникают подобные ошибки?

Похоже на то, что ваша целевая ОС (та, которая на ARM) не поддерживает RTC таймеры (скорее всего собрана без их поддержки).
jacuba
в поисках решения забрел на один китайский блог
Google Chrome помог мне перевести страницу, и если я правильно понял, то там советуют закоментировать ветку else в условии, но там говорится про файл msticker.с а у меня msfilter.c, но мне то же помогло. Прошу поправить, если я понял не правильно.

не нравится мне эти операции с удалением строк из кода.
В общем ошибка пропала и появилась следующая, не помню точно содержание, но что-то про неопределенные SPEEX_PREPROCESS_GET_PSD_SIZE и SPEEX_PREPROCESS_GET_PSD. В этом же блоге было и решение - достаточно было добавить в файл mediastreamer2/src/msconf.c строки
Код
#define SPEEX_PREPROCESS_GET_PSD_SIZE 34
#define SPEEX_PREPROCESS_GET_PSD 35


Эти ошибки больше не возникают, появляются другие, но пока все решается.

Первый раз в жизни столкнулся с кросс-компиляцией и сразу же такой геморой. Кросс-компиляция всегда так тяжело проходит или мой случай исключительный?
kurtis
Попробуйте воспользоваться openembedded. Там в закромах есть рецепты для сборки linphone, найдите похожую целевую платформу, с тем же процессором что и у вас, и попробуйте скомпилировать. Оно само посчитает все зависимости (заодно и кросс-компилятор для вас соберет). В конце получите директорию, которую нужно будет просто переписать на целевое устройство или установить через пакетный менеджер.

А самому, ручками собирать это, ИМХО, весьма сомнительное удовольствие...

может вдруг поможет, собрал linphone под armv6 http://dl.dropbox.com/u/2632562/linphone-3.1.0-r3.tar.bz2
jacuba
kurtis, спасибо за ответ.
к сожалению Ваш linphone мне не подошел.
спасибо за наводку, пойду поковыряю openembedded
jacuba
кхм, может я плохо искал, но ничего на openembedded.org (kurtis, вы ведь об этом говорили?), посему решил вернуться к ручной самостоятельной сборке.

Код
CXXLD  libmediastreamer.la
/usr/local/arm/3.3.2/lib/gcc-lib/arm-linux/3.3.2/../../../../arm-linux/bin/ld: cannot find -lspeexdsp
collect2: ld returned 1 exit status
make[5]: *** [libmediastreamer.la] Ошибка 1
make[5]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src'
make[4]: *** [all] Ошибка 2
make[4]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2'
make[2]: *** [all] Ошибка 2
make[2]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/home/user/linphone-34/linphone-3.4.3'
make: *** [all] Ошибка 2


Конфигурирую следующим образом:
Код
./configure --prefix=/armbuild --host=arm-linux --with-gnu-ld --disable-static --disable-glib --with-osip=$ARM_INSTALL_TREE/usr --with-readline=$ARM_INSTALL_TREE/usr SPEEX_CFLAGS="-I$ARM_INSTALL_TREE/usr/include"  SPEEX_LIBS="-L$ARM_INSTALL_TREE/usr/lib -lspeex" --disable-video --disable-nls --enable-gtk_ui=no --disable-glib --enable-alsa=no

я уже ничего не понимаю, откуда почему и как? Прошу помощи!
uriy
jacuba, удалось вам запустить linphone? Я тоже с ним сейчас работаю но у меня ucLinux. У меня проблемы с работой linphone на целевой плате. Он отжирает память. Если звонить на него с интервалом: 1 сек пауза, 1 сек разговор в режиме автоподнятия, то через час работы уходит метров 30. После этого моя плата виснет из-за отсутствия свободного ОЗУ. Возможно это проблема не linphone, а ucLinux. Хотел узнать как вас с ОЗУ обстоят дела.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.