[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#998853: obs-frontend-api.h: fatal error: {obs,util/darray}.h: No such file or directory



Control: reassign -1 obs-move-transition 2.5.1-2

On 2021-11-27 23:12:58 +0100, Sebastian Ramacher wrote:
> On 2021-11-27 17:17:56 -0300, Eriberto wrote:
> > Em seg., 22 de nov. de 2021 às 20:02, Sebastian Ramacher
> > <sramacher@debian.org> escreveu:
> > >
> > > Control: tags -1 moreinfo
> > >
> > > On 2021-11-08 17:23:01 -0300, Joao Eriberto Mota Filho wrote:
> > > > Package: libobs-dev
> > > > Version: 26.1.2+dfsg1-2
> > > > Severity: important
> > > > Tags: patch
> > > > Control: affects -1 obs-move-transition
> > > >
> > > > Dear maintainer,
> > > >
> > > > In last weekend obs-move-transition[1] arrived to Debian. obs-move-transition
> > > > is the most rated plugin for obs-studio.
> > > >
> > > >  [1] https://tracker.debian.org/pkg/obs-move-transition
> > > >
> > > > obs-move-transition depends of the libobs-dev. When packaging this plugin, I
> > > > got the following errors:
> > > >
> > > >  In file included from /PKGS/obs-move-transition-2.5.1/move-source-filter.c:2:
> > > >  /usr/include/obs/obs-frontend-api.h:3:10: fatal error: obs.h: No such file or directory
> > > >      3 | #include <obs.h>
> > > >        |          ^~~~~~~
> > > >
> > > >  In file included from /PKGS/obs-move-transition-2.5.1/move-transition.c:3:
> > > >  /usr/include/obs/obs-frontend-api.h:4:10: fatal error: util/darray.h: No such file or directory
> > > >      4 | #include <util/darray.h>
> > > >        |          ^~~~~~~~~~~~~~~
> > > >
> > > > To allow the plugin to build correctly, I created a 'fixed copy' of the
> > > > /usr/include/obs/obs-frontend-api.h inside of
> > > > obs-move-transition-2.5.1.
> > > >
> > > > On Debian, the libobs-dev put the headers in /usr/include/obs/ but the current
> > > > /usr/include/obs/obs-frontend-api.h expects to find for these files in
> > > > /usr/include/. However, when building obs-studio, the source code searches for
> > > > the headers also in /usr/include/. Consequently, making a patch for
> > > > obs-frontend-api.h to search for headers in /usr/include/obs/ will generate a
> > > > FTBFS. IMO, the right way is changing the obs-frontend-api.h after the
> > > > obs-studio build process. The attached patch will fix this issue. I also sent
> > > > an MR to Salsa [2] to make to make easier the fix.
> > >
> > > In the cmake config installed by libobs-dev, the include dir is
> > > specified as /usr/include/obs. Why is obs-move-transition ignoring this
> > > bit?
> > 
> > Hi Sebastian,
> > 
> > The /usr/include/obs/obs-frontend-api.h is part of the obs-studio, not
> > obs-move-transition. Thus, the obs-studio package has an internal file
> > (obs-frontend-api.h) pointing to a wrong path. The problem is not in
> > obs-move-transition.
> > 
> > In other words, obs-move-transition is not ignoring the cmake config
> > installed by libobs-dev. Let me know how to help you. I think my MR #5
> > will solve this issue.
> 
> Let me reprhase that: the cmake config of obs-studio tells users to set
> -I/usr/include/obs which makes #include <obs.h> and #include
> <util/darray.h> work. Why is obs-move-transition not picking this up?

I just checked obs-move-transition's CMakeLists.txt. It's missing the
equivalent of a find_package(libobs REQUIRED) and then setting up the
include directories. This is a bug in obs-move-transition.

Cheers
-- 
Sebastian Ramacher

Attachment: signature.asc
Description: PGP signature


Reply to: