Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Oct 2004 14:02:42 -0400 (EDT)
From:      Vivek Khera <vivek@khera.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        sobomax@FreeBSD.org
Subject:   ports/72973: asterisk build fails due to incorrect workdir path
Message-ID:  <20041021180242.5E07D217B5@yertle.kcilink.com>
Resent-Message-ID: <200410211810.i9LIAOQ8081836@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         72973
>Category:       ports
>Synopsis:       asterisk build fails due to incorrect workdir path
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Oct 21 18:10:23 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Vivek Khera
>Release:        FreeBSD 4.10-STABLE i386
>Organization:
>Environment:
System: FreeBSD yertle.int.kciLink.com 4.10-STABLE FreeBSD 4.10-STABLE #12: Tue Jul 13 13:13:38 EDT 2004 khera@yertle.int.kciLink.com:/u/yertle2/usr.obj/u/sources/usr/src/sys/YERTLE i386

(actually I built asterisk on a 5.3-BETA7 box, but report from this one).

	
>Description:
	

when building net/asterisk, it fails to find the include files from pwlib and
openh323 since the WORKDIR for those ports is improperly specified.

Specifically, my /usr/ports is NFS mounted using automounter, so the work
directory is not ${WRKDIRPREFIX}${PORTSDIR}/devel/pwlib/work/pwlib (which
translates to /var/tmp/usr/ports/devel/pwlib/work/pwlib instead of the correct
/var/tmp/amd/yertle/u/sources/usr/ports/devel/pwlib/work/pwlib.

You can see it in this build excerpt:


gmake -C h323 ast_h323.o
gmake[2]: Entering directory
`/var/tmp/amd/yertle/u/sources/usr/ports/net/asterisk/work/asterisk-1.0.1/channels/h323'
c++ -O -pipe -c -fno-rtti -o ast_h323.o -O -pipe -Wall -Wstrict-prototypes
-Wmissing-prototypes -Wmissing-declarations -Iinclude -I../include
-D_REENTRANT -D_GNU_SOURCE -march=i386 -I/usr/local/include
-DZAPTEL_OPTIMIZATIONS -DASTERISK_VERSION=\"1.0.1\"
-DINSTALL_PREFIX=\"/usr/local\" -DASTETCDIR=\"/usr/local/etc/asterisk\"
-DASTLIBDIR=\"/usr/local/lib/asterisk\"
-DASTVARLIBDIR=\"/usr/local/share/asterisk\" -DASTVARRUNDIR=\"/var/run\"
-DASTSPOOLDIR=\"/var/spool/asterisk\" -DASTLOGDIR=\"/var/log/asterisk\"
-DASTCONFPATH=\"/usr/local/etc/asterisk/asterisk.conf\"
-DASTMODDIR=\"/usr/local/lib/asterisk/modules\"
-DASTAGIDIR=\"/usr/local/share/asterisk/agi-bin\" -DBUSYDETECT_MARTIN
-Wno-missing-prototypes -Wno-missing-declarations -DOLD_SANGOMA_API
-DIAX_TRUNKING -I/usr/local/include -DCRYPTO -fPIC
-DPBYTE_ORDER=PLITTLE_ENDIAN -DNDEBUG -DDO_CRASH -DDEBUG_THREADS -pipe -Wall
-fPIC -pthread -D_REENTRANT -D_GNU_SOURCE -DP_HAS_SEMAPHORES -DP_SSL
-DP_PTHREADS -DPHAS_TEMPLATES -DPTRACING -DP_USE_PRAGMA -I../../include
-I/var/tmp/usr/ports/devel/pwlib/work/pwlib/include/ptlib/unix
-I/var/tmp/usr/ports/devel/pwlib/work/pwlib/include
-I/var/tmp/usr/ports/net/openh323/work/openh323/include
-Wno-missing-prototypes -Wno-missing-declarations ast_h323.cpp
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for
C/ObjC but not for C++
cc1plus: warning: command line option "-Wmissing-prototypes" is valid for
C/ObjC but not for C++
cc1plus: warning: command line option "-Wmissing-declarations" is valid for
C/ObjC but not for C++
cc1plus: warning: command line option "-Wno-missing-prototypes" is valid for
C/ObjC but not for C++
cc1plus: warning: command line option "-Wno-missing-declarations" is valid for
C/ObjC but not for C++
cc1plus: warning: command line option "-Wno-missing-prototypes" is valid for
C/ObjC but not for C++
cc1plus: warning: command line option "-Wno-missing-declarations" is valid for
C/ObjC but not for C++
ast_h323.cpp:34:19: ptlib.h: No such file or directory
ast_h323.cpp:35:18: h323.h: No such file or directory
ast_h323.cpp:36:21: h323pdu.h: No such file or directory
ast_h323.cpp:37:22: mediafmt.h: No such file or directory
ast_h323.cpp:38:17: lid.h: No such file or directory
In file included from ast_h323.cpp:48:
chan_h323.h:31: error: aggregate `sockaddr_in bindaddr' has incomplete type
and cannot be defined
chan_h323.h:51: error: field `addr' has incomplete type
chan_h323.h:69: error: field `addr' has incomplete type
In file included from ast_h323.cpp:49:
ast_h323.h:61: error: expected class-name before '{' token
ast_h323.h:62: error: `H323AudioCapability' has not been declared
ast_h323.h:62: error: ISO C++ forbids declaration of `PCLASSINFO' with no type
ast_h323.h:62: error: ISO C++ forbids declaration of `parameter' with no type

 [[[ gobs of other errors in these two files elided, since they seem to
     stem from the missing headers ]]]

ast_h323.cpp:840: error: `H323_ExternalRTPChannel' has not been declared
ast_h323.cpp:840: error: class `MyH323_ExternalRTPChannel' does not have any
field named `H323_ExternalRTPChannel'
ast_h323.cpp:840: error: `id' undeclared (first use this function)
ast_h323.cpp:842: confused by earlier errors, bailing out
gmake[2]: *** [ast_h323.o] Error 1
gmake[2]: Leaving directory
`/var/tmp/amd/yertle/u/sources/usr/ports/net/asterisk/work/asterisk-1.0.1/channels/h323'
gmake[1]: *** [h323/ast_h323.o] Error 2
gmake[1]: Leaving directory
`/var/tmp/amd/yertle/u/sources/usr/ports/net/asterisk/work/asterisk-1.0.1/channels'
gmake: *** [subdirs] Error 1
*** Error code 2

Stop in /amd/yertle/u/sources/usr/ports/net/asterisk.
55.592user 11.490sys 92.3%, 1ib 20ob 3577tx 1774da 5352to 0swp 1:12.67


>How-To-Repeat:
	

mount via automounter your /usr/ports.

>Fix:

	

Temporary fix is to make appropriate symlink in /var/tmp and restart the
build.


Permanent fix:  in the port's Makefile, instead of using

 ${WRKDIRPREFIX}${PORTSDIR}/devel/pwlib/work/pwlib

use this:

 `cd ${PORTSDIR}/devel/pwlib; make -V WRKSRC`

Same thing applies for the openh323 port directory.
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041021180242.5E07D217B5>