devel/py3-gobject3 fails to build
blubee blubeeme
gurenchan at gmail.com
Mon Nov 6 19:41:15 UTC 2017
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/${
PYTHON_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-
packages
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