Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Dec 2015 09:15:33 +0100
From:      Matthias Apitz <guru@unixarea.de>
To:        Michael Jung <mikej@mikej.com>
Cc:        Don Lewis <truckman@freebsd.org>, office@freebsd.org, freebsd-ports@freebsd.org
Subject:   Re: [Bug 205242] editors/libreoffice (5.0.3, r403255) does not build in poudriere on 11.0-CURRENT r276659
Message-ID:  <20151216081533.GA2235@c720-r285885-amd64>
In-Reply-To: <53de624936d92c8cfe00f12bdb55667a@mail.mikej.com>
References:  <20151213162000.GA3775@c720-r285885-amd64> <201512132310.tBDNAR8C077879@gw.catspoiler.org> <20151214055948.GA3238@c720-r285885-amd64> <20151215140201.GA3931@c720-r285885-amd64> <53de624936d92c8cfe00f12bdb55667a@mail.mikej.com>

next in thread | previous in thread | raw e-mail | index | archive | help
El día Tuesday, December 15, 2015 a las 05:31:39PM -0500, Michael Jung escribió:

> > I still have a copy of the failed workspace.
> > 
> > 	matthias
> 
> FWIW
> 
> # $FreeBSD: head/editors/libreoffice/Makefile 403436 2015-12-09 
> 23:43:30Z jbeich $
> 
> built without error for me on FreeBSD 11.0-CURRENT #10 r291494M today.
> 
> using poudriere-devel-3.1.99.20151204
> 
> ...

> I'll be happy to post the log file or provide additional info if help 
> other regard
> this as (s)HAM

Question: Do you compiled the port in poudriere with clang or gcc?
Please send ma the log off-list. Thanks.

Meanwhile, I could catch the situation with the failing gengal.bin for
the Gallery/arrows dir. A truss shows that the proc for gengal is
failing during start with a message:


pen("/wrkdirs/usr/ports/editors/libreoffice/work/libreoffice-5.0.3.2/workdir/Rdb/ure/services.rdb",O_EXCL,00)
= 7 (0x7)
fstat(7,{ mode=-rw-r--r-- ,inode=168077,size=7991,blksize=4096 }) = 0
(0x0)
mmap(0x0,7991,PROT_READ,MAP_SHARED,7,0x0)        = 34367979520
(0x8007dc000)
munmap(0x8007dc000,7991)                         = 0 (0x0)
close(7)                                         = 0 (0x0)
write(2,"Bootstrap exception 'service not supplied'\n",43) = 43 (0x2b)
_umtx_op(0x800630008,UMTX_OP_WAIT_UINT_PRIVATE,0x0,0x18,0x7fffdfffdee0)
= 0 (0x0)
_umtx_op(0x819c06658,UMTX_OP_NWAKE_PRIVATE,0x1,0x0,0x0) = 0 (0x0)
open("/lib/libgcc_s.so.1",O_CLOEXEC,00)          = 7 (0x7)
fstat(7,{ mode=-r--r--r-- ,inode=16373968,size=56248,blksize=32768 }) =
0 (0x0)
close(7)                                         = 0 (0x0)
_umtx_op(0x819c07000,UMTX_OP_WAIT,0x1875d,0x0,0x0) = 0 (0x0)
munmap(0x8007cc000,65536)                        = 0 (0x0)
munmap(0x8007bc000,65536)                        = 0 (0x0)
madvise(0x819cf0000,0x3a000,0x5,0x804d4dbe8,0x804d4dbe8,0x0) = 0 (0x0)
close(3)                                         = 0 (0x0)
madvise(0x819cbe000,0x32000,0x5,0x804d4dbe8,0x804d4dbe8,0x0) = 0 (0x0)
madvise(0x819c9c000,0x2000,0x5,0x804d4dbe8,0x804d4dbe8,0x0) = 0 (0x0)
process exit, rval = 1

I have from the situation the following data:

- complete args and environment for gengal.bin
- the above visible XML file services.rdb
- the complete truss file

The failing code in gengal.cxx is this

void GalApp::Init()
{
    try {
        if( !mbInBuildTree && getenv( "OOO_INSTALL_PREFIX" ) == NULL ) {
            OUString fileName = GetAppFileName();
            int lastSlash = fileName.lastIndexOf( '/' );
#ifdef WNT
        // Don't know which directory separators GetAppFileName()
        // returns on Windows.
        // Be safe and take into consideration they might be
        // backslashes.
            if( fileName.lastIndexOf( '\\' ) > lastSlash )
                lastSlash = fileName.lastIndexOf( '\\' );
#endif
            OUString baseBinDir = fileName.copy( 0, lastSlash );
            OUString installPrefix = baseBinDir + "/../..";

            OUString envVar( "OOO_INSTALL_PREFIX");
            osl_setEnvironment(envVar.pData, installPrefix.pData);
        }
        OSL_TRACE( "OOO_INSTALL_PREFIX=%s", getenv( "OOO_INSTALL_PREFIX"
) );

        uno::Reference<uno::XComponentContext> xComponentContext
            = ::cppu::defaultBootstrap_InitialComponentContext();
        xMSF = uno::Reference<lang::XMultiServiceFactory>
            ( xComponentContext->getServiceManager(), uno::UNO_QUERY );
        if( !xMSF.is() )
        {
            fprintf( stderr, "Failed to bootstrap\n" );
            exit( 1 );
        }
        ::comphelper::setProcessServiceFactory( xMSF );

        // For backwards compatibility, in case some code still uses
        // plain
        // createInstance w/o args directly to obtain an instance:
        com::sun::star::ucb::UniversalContentBroker::create(xComponentContext);
    } catch (const uno::Exception &e) {
        fprintf( stderr, "Bootstrap exception '%s'\n",

And I can very easy reproduce the problem by just un-taring a saved
work/ dir into a stopped jail, if someone with more C++ and libreoffice
knowledge is willing to investigate this.

Just drop me a line. Thanks

	matthias

-- 
Matthias Apitz, ✉ guru@unixarea.de, 🌐 http://www.unixarea.de/  ☎ +49-176-38902045



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