devel/py3-gobject3 fails to build

blubee blubeeme gurenchan at gmail.com
Mon Nov 6 19:50:33 UTC 2017


I just did another test in a clean jail with no python installed. I went
into the /deve/py3-gobject3/ directory and ran make

libtool: install: /usr/bin/install -c .libs/libxcb-render-util.a
/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/lib/libxcb-render-util.a
libtool: install: strip --strip-debug
/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/lib/libxcb-render-util.a
libtool: install: chmod 644
/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/lib/libxcb-render-util.a
libtool: install: ranlib
/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/lib/libxcb-render-util.a
libtool: install: warning: remember to run `libtool --finish /usr/local/lib'
 /bin/mkdir -p
'/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/libdata/pkgconfig'
 install  -m 0644 xcb-renderutil.pc
'/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/libdata/pkgconfig'
 /bin/mkdir -p
'/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/include/xcb'
 install  -m 0644 xcb_renderutil.h
'/usr/ports/x11/xcb-util-renderutil/work/stage/usr/local/include/xcb'
gmake[8]: Leaving directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9/renderutil'
gmake[7]: Leaving directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9/renderutil'
gmake[7]: Entering directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9'
gmake[8]: Entering directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9'
gmake[8]: Nothing to be done for 'install-exec-am'.
gmake[8]: Nothing to be done for 'install-data-am'.
gmake[8]: Leaving directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9'
gmake[7]: Leaving directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9'
gmake[6]: Leaving directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9'
gmake[5]: Leaving directory
'/usr/ports/x11/xcb-util-renderutil/work/xcb-util-renderutil-0.3.9'
====> Compressing man pages (compress-man)
===>  Installing for xcb-util-renderutil-0.3.9_1
===>  Checking if xcb-util-renderutil already installed
===>   Registering installation for xcb-util-renderutil-0.3.9_1 as automatic
[worker] Installing xcb-util-renderutil-0.3.9_1...
===>   cairo-1.14.8_1,2 depends on file:
/usr/local/libdata/pkgconfig/xcb-renderutil.pc - found
===>   Returning to build of cairo-1.14.8_1,2
===>   cairo-1.14.8_1,2 depends on package: pkgconf>=1.3.0_1 - found
===>   cairo-1.14.8_1,2 depends on file: /usr/local/lib/libGL.so - not found
===>  mesa-libs-17.2.2 needs Python 2.7 at most, but 3.6 was specified.
*** Error code 1

Stop.
make[4]: stopped in /usr/ports/graphics/mesa-libs
*** Error code 1

Stop.
make[3]: stopped in /usr/ports/graphics/cairo
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/graphics/cairo
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/graphics/py3-cairo
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/py3-gobject3

This is the error that comes up when trying to compile devel/py3-gobject3
port. mesa-libs needed by cairo cannot be built with python > 2.7


On Tue, Nov 7, 2017 at 3:41 AM, blubee blubeeme <gurenchan at gmail.com> wrote:

> I am porting an ibus library that needs
> Python >= 3.2
> the Python 3 GObject bindings
> IBus >= 1.4.1 (note that its GObject-Introspection bindings must be
> enabled)
>
> I've done this to my makefile:
> PORTNAME=               ibus-cangjie
> PORTVERSION=            2.4
> DISTVERSIONPREFIX=      v
> CATEGORIES=             chinese
>
> MAINTAINER=     hello at blubee.me
> COMMENT=        Sophisticated software synthesizer
>
> LICENSE=        GPLv2+
> LICENSE_FILE=   ${WRKSRC}/COPYING
>
> RUN_DEPENDS=    ${PREFIX}/lib/python3.6/site-
> packages/cangjie/_core.so:chinese/pycangjie        \
>                 py3?-gobject3>=0:devel/py3-gobject3
>
> LIB_DEPENDS=    libibus-1.0.so:textproc/ibus
>
> USES=           autoreconf gmake        \
>                 libtool pkgconfig       \
>                 python:2.7,build
>
> # USE_GNOME=    glib20 gtk30 pygobject3 introspection:run  #====#this
> fails because cairo requires <= py2.7
> USE_GNOME=      introspection
>
> GNU_CONFIGURE=          yes
> USE_LDCONFIG=           yes
>
> USE_GITHUB=             yes
> GH_ACCOUNT=             Cangjians
> GH_PROJECT=             ibus-cangjie
>
> .include <bsd.port.pre.mk>
> pre-configure:
>         @(cd ${WRKSRC} && ./autogen.sh)
> .include <bsd.port.post.mk>
>
>
> This project doesn't build with python > 2.7 because ibus will fail, so I
> added the run dependency but I don't know what to add to get the
> introspection, if I add USE_GNOME that pulls in cairo, which then fails
> because cairo needs python 2.7 or below.
>
> pycangjie makefile looks like this:
> BUILD_DEPENDS=  cython3>0:lang/cython3
> LIB_DEPENDS=    libcangjie.so:chinese/libcangjie
>
> USES=           autoreconf gmake        \
>                 libtool pkgconfig       \
>                 localbase python:3.6    \
>                 sqlite
>
> BINARY_ALIAS=   cython=cython-3.6
> GNU_CONFIGURE=          yes
> USE_LDCONFIG=           yes
>
> USE_GITHUB=             yes
> GH_ACCOUNT=             Cangjians
> GH_PROJECT=             pycangjie
>
> .include <bsd.port.pre.mk>
> pre-configure:
>         @(cd ${WRKSRC} && ./autogen.sh)
> # post-build:
> post-install:
>         (cd ${STAGEDIR}${PREFIX} \
>         && ${PYTHON_CMD} ${PYTHON_LIBDIR}/*.py \
>         -d ${PREFIX} -f ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;})
>         @(${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/${PYT
> HON_VERSION}/site-packages/cangjie/*.so)
>
> .include <bsd.port.post.mk>
>
> I get this compilation error below
>
> checking for python3 platform... freebsd12
> checking for python3 script directory... ${prefix}/lib/python3.6/site-p
> ackages
> checking for python3 extension module directory...
> ${exec_prefix}/lib/python3.6/site-packages
> checking the cangjie Python module... yes
> checking for pkg-config... /usr/local/bin/pkg-config
> checking pkg-config is at least version 0.9.0... yes
> checking for IBus... yes
> checking for IBus component dir... /usr/local/share/ibus/component
> checking the IBus introspection-based bindings... no
> configure: error: Please install the IBus introspection-based bindings
> *** Error code 1
>
> I've been trying to get this to work from ports for the past two days and
> nothing that i've tried seems to work, especially since building and
> running requires 2 versions of python.
>
> how can I setup the introspection-based bindings?
>
> On Tue, Nov 7, 2017 at 3:30 AM, Mathieu Arnold <mat at freebsd.org> wrote:
>
>> Le 06/11/2017 à 19:53, blubee blubeeme a écrit :
>> > When trying to build a port and including py3-gobject3 either through:
>> > USE_GNOME= py3gobject3
>> > or
>> > RUN_DEPENDS= py3-gobject3:devel/py3-gobject3
>> >
>> > the build will fail because py3-gobject3 needs cairo but cairo cannot
>> build
>> > with python > 2.7
>> >
>> > Is this a bug in the port or am I doing something wrong?
>>
>> As it all works fine for everybody else, I'm sure you must be doing
>> something wrong. graphics/cairo does not need python, py3-gobject3
>> depends on py3-cairo which builds fine with Python 3.
>>
>> Please, provide logs of what you are doing, and where it fails,
>> otherwise, nobody can try to figure out what you are doing wrong.
>>
>> --
>> Mathieu Arnold
>>
>>
>>
>


More information about the freebsd-ports mailing list