linphone 0.12.2 lässt sich nicht kompilieren [gelöst]

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
einELCH
Beiträge: 146
Registriert: 04.04.2004 20:55:08
Kontaktdaten:

linphone 0.12.2 lässt sich nicht kompilieren [gelöst]

Beitrag von einELCH » 02.07.2004 13:14:54

Titel sagt eigentlich schon alles ;-)

make
make[2]: Gehe in Verzeichnis »/usr/local/src/linphone-0.12.2/coreapi«
source='linphonecore.c' object='linphonecore.lo' libtool=yes \
depfile='.deps/linphonecore.Plo' tmpdepfile='.deps/linphonecore.TPlo' \
depmode=gcc3 /bin/sh ../depcomp \
/bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../osipua/ -I../osipua/src -I../oRTP/src -I../oRTP/ -I../mediastreamer -I../speex/libspeex -I/usr/include/ -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DENABLE_TRACE -DG_LOG_DOMAIN=\"LinphoneCore\" -g -O2 -c -o linphonecore.lo `test -f 'linphonecore.c' || echo './'`linphonecore.c
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../osipua/ -I../osipua/src -I../oRTP/src -I../oRTP/ -I../mediastreamer -I../speex/libspeex -I/usr/include/ -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DENABLE_TRACE -DG_LOG_DOMAIN=\"LinphoneCore\" -g -O2 -c linphonecore.c -MT linphonecore.lo -MD -MP -MF .deps/linphonecore.TPlo -fPIC -DPIC -o .libs/linphonecore.o
linphonecore.c: In function `linphone_core_set_nat_address':
linphonecore.c:1249: error: storage size of `hints' isn't known
linphonecore.c:1252: error: invalid application of `sizeof' to an incomplete type
linphonecore.c:1252: error: invalid application of `sizeof' to an incomplete type
linphonecore.c:1252: error: invalid application of `sizeof' to an incomplete type
linphonecore.c:1252: error: invalid application of `sizeof' to an incomplete type
linphonecore.c:1252: error: invalid application of `sizeof' to an incomplete type
linphonecore.c:1252: error: invalid application of `sizeof' to an incomplete type
make[2]: *** [linphonecore.lo] Fehler 1
make[2]: Verlasse Verzeichnis »/usr/local/src/linphone-0.12.2/coreapi«
make[1]: *** [all-recursive] Fehler 1
make[1]: Verlasse Verzeichnis »/usr/local/src/linphone-0.12.2«
make: *** [all] Fehler 2
linphonecore.c - zeilen 1245-1285
void linphone_core_set_nat_address(LinphoneCore *lc, gchar *addr, gboolean use)
{
gchar *tmp=NULL;
gint err;
struct addrinfo hints,*res;

if (addr!=NULL && use){
memset(&hints,0,sizeof(struct addrinfo));
hints.ai_family=PF_UNSPEC;
hints.ai_socktype = SOCK_DGRAM;
err=getaddrinfo(addr,NULL,&hints,&res);
if (err==0){
tmp=g_strdup(addr);
freeaddrinfo(res);
}else {
g_warning("Invalid nat address %s",addr);
return;
}
}
if (lc->net_conf.nat_address!=NULL){
g_free(lc->net_conf.nat_address);
}
lc->net_conf.nat_address=tmp;
if (use && (tmp!=NULL)){
gchar *ct;
/* change OsipUA object main contact */
if (lc->sip_conf.sip_port==5060){
ct=g_strdup_printf("sip:%s@%s",lc->sip_conf.username,tmp);
}else{
ct=g_strdup_printf("sip:%s@%s:%i",lc->sip_conf.username,tmp,
lc->sip_conf.sip_port);
}
osip_ua_set_contact(lc->ua,ct);
g_free(ct);
lc->net_conf.use_nat=TRUE;
}
else {
lc->net_conf.use_nat=FALSE;
linphone_core_update_contact_info(lc);
}
}
hoffe dass mir da wer helfen kann.. danke

//edit :: hab leider kaum ahnung von c/c++..

einELCH
Beiträge: 146
Registriert: 04.04.2004 20:55:08
Kontaktdaten:

Beitrag von einELCH » 04.07.2004 11:07:13

Lösung:
Einfach in linphonecore.c folgendes abändern:
das hier..
<<<<
#ifdef INET6
#include <netdb.h>
#endif
>>>>
austauschen gegen das hier

<<<<
#include <netdb.h>
>>>>
fragt mich nich ob das sauber programmiert ist, ich hab von programmierung in c/c++ wie gesagt null ahnung :mrgreen:
auf jeden fall funktioniert es.
achso: Das problem tritt nur auf, wenn ./configure mit der option --disable-ipv6 aufgerufen wird. nach dem kompilieren mit o.g. änderung lauscht linphone tatsächlich nur noch über ipv4.

Antworten