From owner-freebsd-pkg@FreeBSD.ORG Fri Sep 26 08:19:00 2014 Return-Path: Delivered-To: pkg@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 483E111D; Fri, 26 Sep 2014 08:19:00 +0000 (UTC) Received: from man.dat.pl (dat.pl [80.51.155.34]) by mx1.freebsd.org (Postfix) with ESMTP id BEEE094; Fri, 26 Sep 2014 08:18:59 +0000 (UTC) Received: from man.dat.pl (localhost [127.0.0.1]) by man.dat.pl (Postfix) with ESMTP id 98F0BD16A0F; Fri, 26 Sep 2014 10:18:56 +0200 (CEST) X-Virus-Scanned: amavisd-new at dat.pl Received: from man.dat.pl ([127.0.0.1]) by man.dat.pl (man.dat.pl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id pqIRkZeWeDKG; Fri, 26 Sep 2014 10:18:55 +0200 (CEST) Message-ID: <5425216D.9090405@dat.pl> Date: Fri, 26 Sep 2014 10:18:53 +0200 From: Maciej Milewski MIME-Version: 1.0 To: Thiago Farina Subject: Re: Can't compile pkg on mips References: <54233771.4090803@dat.pl> <057b903c-628f-4843-b7de-c0f7cb9750b4@email.android.com> <5424425A.9040709@FreeBSD.org> <54247A94.6090901@dat.pl> <542488B9.6090700@dat.pl> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Cc: "pkg@FreeBSD.org" , Bryan Drewery X-BeenThere: freebsd-pkg@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Binary package management and package tools discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Sep 2014 08:19:00 -0000 On 26.09.2014 05:47, Thiago Farina wrote: > On Thu, Sep 25, 2014 at 6:27 PM, Maciej Milewski wrote: >> On 25.09.2014 22:33, Thiago Farina wrote: >>> On Thu, Sep 25, 2014 at 5:27 PM, Maciej Milewski wrote:= >>>>> What FreeBSD version is this? >>>>> >>>> FreeBSD RSPRO 10.0-CURRENT FreeBSD 10.0-CURRENT #9 r253582+713ffac >>>> >>>> after manual edit src/Makefile and removing -Werror compilation went= few >>>> lines further: >>>> =3D=3D=3D> Building for pkg-1.3.8 >>>> /usr/bin/make all-recursive >>>> Making all in external >>>> /usr/bin/make all-am >>>> Making all in libpkg >>>> Making all in repo >>>> Making all in binary >>>> Making all in . >>>> Making all in src >>>> CCLD pkg >>>> pkg-info.o: In function `exec_info': >>>> info.c:(.text+0x5ac): undefined reference to `cap_rights_init' >>>> pkg-ssh.o: In function `exec_ssh': >>>> ssh.c:(.text+0x160): undefined reference to `cap_rights_init' >>>> pkg-updating.o: In function `exec_updating': >>>> updating.c:(.text+0x334): undefined reference to `cap_rights_init' >>>> *** [pkg] Error code 1 >>>> >>> Can you do `grep -Rn cap_rights_limit . `, to figure out where >>> "cap_rights_limit" is? >>> >>> It is missing either a ".a" or ".o" where this symbol is, hence it >>> isn't linking. >>> >>> Not your fault though. >> Sure I can: >> /data/builds/usr/ports/ports-mgmt/pkg/work/pkg-1.3.8# grep -Rn >> cap_rights_limit . >> ./src/ssh.c:78: if (cap_rights_limit(fd, &rights) < 0 && errno !=3D EN= OSYS ) { >> ./src/ssh.c:79: warn("cap_rights_limit() failed"); >> ./src/info.c:267: if (cap_rights_limit(fd, &rights) < 0 = && >> errno !=3D ENOSYS ) { >> ./src/info.c:268: warn("cap_rights_limit() faile= d"); >> ./src/updating.c:141: if (cap_rights_limit(fileno(fd), &rights) < 0 = && >> errno !=3D ENOSYS ) { >> ./src/updating.c:142: warn("cap_rights_limit() failed"); >> Binary file ./src/pkg-info.o matches >> Binary file ./src/pkg-ssh.o matches >> Binary file ./src/pkg-updating.o matches >> > Do you have HAVE_CAPSICUM defined? It needs to be defined in order to > sys/capability.h to get included. > > But I think that does not explain the link issue. It is weird that it > is not finding something from libc. > Grep shows that it's defined: Is it autodectected somehow? =20 # grep -nr HAVE_CAPSICUM * = =20 config.log:3815:#define HAVE_CAPSICUM 1 config.status:1086:D["HAVE_CAPSICUM"]=3D" 1" configure:13295:$as_echo "#define HAVE_CAPSICUM 1" >>confdefs.h configure.ac:224: AC_DEFINE(HAVE_CAPSICUM, 1, [Define 1 if you have 'capsicum'.]) configure.bak:13295:$as_echo "#define HAVE_CAPSICUM 1" >>confdefs.h libpkg/ssh.c:31:#ifdef HAVE_CAPSICUM libpkg/ssh.c:134:#ifdef HAVE_CAPSICUM pkg_config.h:17:#define HAVE_CAPSICUM 1 pkg_config.h.in:16:#undef HAVE_CAPSICUM src/ssh.c:31:#ifdef HAVE_CAPSICUM src/ssh.c:58:#ifdef HAVE_CAPSICUM src/ssh.c:76:#ifdef HAVE_CAPSICUM src/audit.c:259:#ifdef HAVE_CAPSICUM src/info.c:35:#ifdef HAVE_CAPSICUM src/info.c:99:#ifdef HAVE_CAPSICUM src/info.c:265:#ifdef HAVE_CAPSICUM src/event.c:40:#ifdef HAVE_CAPSICUM src/event.c:215:#ifdef HAVE_CAPSICUM src/event.c:319:#ifdef HAVE_CAPSICUM src/updating.c:32:#ifdef HAVE_CAPSICUM src/updating.c:84:#ifdef HAVE_CAPSICUM src/updating.c:139:#ifdef HAVE_CAPSICUM --=20 Pozdrawiam, Maciej Milewski