Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Общего характера / Не собирается g72x кодеки под Mac OS X

Не собирается g72x кодеки под Mac OS X

Сообщений: 10

Не собирается g72x кодеки под Mac OS X

День добрый.

Хочу собрать asterisk с g729 и g723 кодеками под Mac. Установил fink, xcode и Ipp Library. Samples собираются на ура. Компиляция кодеков проходит без проблем. А вот на этапе сборки получаю кучу неопределенных ссылок:


gcc -Wall -bundle -Xlinker -x -D_GNU_SOURCE -DG72X_ASTERISK=14 -I/Users/dmitryr/src/asterisk-1.4.19/include -I/Library/Frameworks/Intel_IPP.framework/Versions/5.3.2.061/em64t//include -O3 -fomit-frame-pointer -fPIC -DG72X_3 -o codec_g723.so codec_g72x.c decg723.c encg723.c owng723.c aux_tbls.c -L/Library/Frameworks/Intel_IPP.framework/Versions/5.3.2.061/em64t//Libraries -lippsc -lipps -lippsr -lippcore -lguide -lpthread -lm
Undefined symbols:
"_ast_verbose", referenced from:
_g72xtolin_framein in ccXkL1oN.o
_g72x_destroy in ccXkL1oN.o
_g72x_destroy in ccXkL1oN.o
_g72x_destroy in ccXkL1oN.o
_load_module in ccXkL1oN.o
"_ast_register_file_version", referenced from:
___register_file_version in ccXkL1oN.o
"___ast_register_translator", referenced from:
_load_module in ccXkL1oN.o
_load_module in ccXkL1oN.o
"_ast_unregister_translator", referenced from:
_load_module in ccXkL1oN.o
_unload_module in ccXkL1oN.o
_unload_module in ccXkL1oN.o
"_ast_cli_unregister", referenced from:
_unload_module in ccXkL1oN.o
"_ast_config_destroy", referenced from:
_load_module in ccXkL1oN.o
"_option_verbose", referenced from:
_option_verbose$non_lazy_ptr in ccXkL1oN.o
"_ast_config_load", referenced from:
_load_module in ccXkL1oN.o
"_ast_unregister_file_version", referenced from:
___unregister_file_version in ccXkL1oN.o
"_ast_module_unregister", referenced from:
___unreg_module in ccXkL1oN.o
"_ast_variable_browse", referenced from:
_load_module in ccXkL1oN.o
"_ast_cli", referenced from:
_handle_cli_g72x_toggle_debug in ccXkL1oN.o
"_ast_cli_register", referenced from:
_load_module in ccXkL1oN.o
_load_module in ccXkL1oN.o
"_ast_trans_frameout", referenced from:
_lintog72x_frameout in ccXkL1oN.o
"_ast_log", referenced from:
_g72xtolin_framein in ccXkL1oN.o
_handle_cli_g72x_toggle_debug in ccXkL1oN.o
_load_module in ccXkL1oN.o
_load_module in ccXkL1oN.o
"_ast_module_register", referenced from:
___reg_module in ccXkL1oN.o
ld: symbol(s) not found
collect2: ld returned 1 exit status



Может подскажет кто с какими ключами собирать?
2008-04-17 16:02

Avatara of noize
Откуда: Москва
Сообщений: 398

Re: Не собирается g72x кодеки под Mac OS X

это наверное благородно, но жОстко(в смысле собирать * под мак)

по теме: не знаю
2008-04-17 16:17

Avatara of litnimax
Откуда: Москва
Сообщений: 3421

Re: Не собирается g72x кодеки под Mac OS X

Undefined symbols:
"_ast_verbose", referenced from:
...
_load_module
Это все символы из сырцов астериска. По идее они должны импортироваться из исходников.
load_modules объявляется в asterisk.h и определен в main/loader.c.
Директория codecs собирается с флагами:
ifneq ($(findstring darwin,$(OSARCH)),)
ASTCFLAGS+=-D__Darwin__
AUDIO_LIBS=-framework CoreAudio
SOLINK=-dynamic -bundle -undefined suppress -force_flat_namespace
else
# These are used for all but Darwin
SOLINK=-shared -Xlinker -x
ifneq ($(findstring BSD,$(OSARCH)),)
LDFLAGS+=-L/usr/local/lib
endif
endif

Darwin - это про Вас?
Попробуйте сделать export SOLINK="-dynamic -bundle -undefined suppress -force_flat_namespace"
А еще лучше также ASTCFLAGS="-D__Darwin__" и AUDIO_LIBS="-framework CoreAudio"
Очень интересно что получится...
http://pbxware.ru - все для Asterisk! || Switchvox - сделано на Asterisk! Подробности на http://switchvox.ru
2008-04-17 17:53

Сообщений: 10

Re: Не собирается g72x кодеки под Mac OS X

Удалось собрать кодеки. show translations работает, но модули из библиотки ipp не перенеслись в кодек., Это значит, что для использования все желающие должны иметь установленную библиотеку, что неудобно. Как втянуть все необходимое из ipp в кодек?

dmitry-rs-macpro31*CLI> core show translation
Translation times between formats (in milliseconds) for one second of data
Source Format (Rows) Destination Format (Columns)

g723 gsm ulaw alaw g726aal2 adpcm slin lpc10 g729 speex ilbc g726 g722
g723 - 2 2 2 2 2 1 2 4 14 10 2 -
gsm 5 - 2 2 2 2 1 2 4 14 10 2 -
ulaw 5 2 - 1 2 2 1 2 4 14 10 2 -
alaw 5 2 1 - 2 2 1 2 4 14 10 2 -
g726aal2 5 2 2 2 - 2 1 2 4 14 10 1 -
adpcm 5 2 2 2 2 - 1 2 4 14 10 2 -
slin 4 1 1 1 1 1 - 1 3 13 9 1 -
lpc10 5 2 2 2 2 2 1 - 4 14 10 2 -
g729 5 2 2 2 2 2 1 2 - 14 10 2 -
speex 5 2 2 2 2 2 1 2 4 - 10 2 -
ilbc 5 2 2 2 2 2 1 2 4 14 - 2 -
g726 5 2 2 2 1 2 1 2 4 14 10 - -
g722 - - - - - - - - - - - - -
dmitry-rs-macpro31*CLI>
2008-04-17 19:17

Avatara of litnimax
Откуда: Москва
Сообщений: 3421

Re: Не собирается g72x кодеки под Mac OS X

Попробуйте перед сборкой сделать make clean && LDFLAGS=-static make
http://pbxware.ru - все для Asterisk! || Switchvox - сделано на Asterisk! Подробности на http://switchvox.ru
2008-04-17 21:10

Сообщений: 10

Re: Не собирается g72x кодеки под Mac OS X

Да я уже все перепробовал, -static под mac OS X не работает как надо, Configure, во всяком случае использует -bundle, что у меня и присутствует. присутствует. команда, которая ,собирает сам рабочий кодек вот такая:

gcc ${wl}-flat_namespace ${wl}-undefined ${wl}suppress -o .libs/codec_g729.so -bundle .libs/codec_g729_la-codec_g72x.o .libs/codec_g729_la-decg729fp.o .libs/codec_g729_la-encg729fp.o .libs/codec_g729_la-owng729fp.o -L/Library/Frameworks/Intel_IPP.framework/Versions/5.3.2.061/em64t/Libraries -lippsc -lipps -lippsr -lippcore -lguide -lpthread -lm -march=nocona -msse -msse2 -msse3 -mfpmath=sse
ar cru .libs/codec_g729.a codec_g729_la-codec_g72x.o codec_g729_la-decg729fp.o codec_g729_la-encg729fp.o codec_g729_la-owng729fp.o
2008-04-17 23:14

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru