Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-07-26 Thread Alejandro Colomar (man-pages)
Hi Nicolas,

I'm adding you to this thread, as you commented on opencv's thread about
pkg-config files.

I'd like to know if you forked opencv's .pc file and are maintaining it,
or if you just renamed it to opencv.pc, or what you decided to do at all.

I've had a lot of problems with their .pc file.  The last one being that
it uses -I instead of -isystem so I have a lot of warnings from their code.

I'd like to patch opencv with a correct pc file, but they want it
autogenerated and I don't know cmake...  So I'm considering all options
available.

Thanks,

Alex

On 7/25/21 11:31 PM, Jochen Sprickerhof wrote:
> * Alejandro Colomar (man-pages)  [2021-07-25
> 21:38]:
>>> I think that would be to big of a patch.
>>
>> Yes.  What is Fedora doing?  Do you know?
> 
> They provide a opencv.pc:
> 
> https://fedora.pkgs.org/rawhide/fedora-x86_64/opencv-devel-4.5.3-1.fc35.x86_64.rpm.html
> 
> 
> The opencv4.pc is a symbolic link:
> 
> https://src.fedoraproject.org/rpms/opencv/blob/rawhide/f/opencv.spec#_350
> 
> Cheers Jochen

-- 
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/



Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-07-25 Thread Jochen Sprickerhof

* Alejandro Colomar (man-pages)  [2021-07-25 21:38]:

I think that would be to big of a patch.


Yes.  What is Fedora doing?  Do you know?


They provide a opencv.pc:

https://fedora.pkgs.org/rawhide/fedora-x86_64/opencv-devel-4.5.3-1.fc35.x86_64.rpm.html

The opencv4.pc is a symbolic link:

https://src.fedoraproject.org/rpms/opencv/blob/rawhide/f/opencv.spec#_350

Cheers Jochen


signature.asc
Description: PGP signature


Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-07-25 Thread Alejandro Colomar (man-pages)

Hi Jochen,

On 7/21/21 5:32 PM, Jochen Sprickerhof wrote:

Hi Alejandro,

* Alejandro Colomar (man-pages)  [2021-07-03 
19:13]:

It seems that they decided long ago to drop support for pkg-config
files.  See
 and


Their only response is "consider using cmake's `find_package()`", which
is not an option for me, and BTW not an option also in many other
important projects.


I talked to them and the agreed to accept patches if the pkg-config 
files are generated automatically. Would you be interested to provide a 
patch? There is some code in PCL for this you could borrow, maybe.


Hmmm, I'd like to, but I have zero idea of cmake (I guess they want to 
autogenerate it with cmake), so I'm not sure I could do that.





What should we do about it?  Maintain our pkg-config files in Debian?


I think that would be to big of a patch.


Yes.  What is Fedora doing?  Do you know?



Cheers Jochen



Cheers,

Alex


--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/



Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-07-21 Thread Jochen Sprickerhof

Hi Alejandro,

* Alejandro Colomar (man-pages)  [2021-07-03 19:13]:

It seems that they decided long ago to drop support for pkg-config
files.  See
 and


Their only response is "consider using cmake's `find_package()`", which
is not an option for me, and BTW not an option also in many other
important projects.


I talked to them and the agreed to accept patches if the pkg-config 
files are generated automatically. Would you be interested to provide a 
patch? There is some code in PCL for this you could borrow, maybe.



What should we do about it?  Maintain our pkg-config files in Debian?


I think that would be to big of a patch.

Cheers Jochen


signature.asc
Description: PGP signature


Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-07-03 Thread Alejandro Colomar (man-pages)
Hi Jochen,

On 6/21/21 8:43 PM, Jochen Sprickerhof wrote:
> * Alejandro Colomar (man-pages)  [2021-06-21
> 17:35]:
>> Maybe Debian could write separate pkg-config files, and maybe offer
>> them to upstream OpenCV (I offer myself to help write them if you
>> decide it's a good idea).
> 
> It's easier if you talk to upstream about this directly. Adding them to
> Debian only would be incompatible with other distros and be of limited use.

It seems that they decided long ago to drop support for pkg-config
files.  See
 and


Their only response is "consider using cmake's `find_package()`", which
is not an option for me, and BTW not an option also in many other
important projects.

What should we do about it?  Maintain our pkg-config files in Debian?

> 
>> Yes, for linking against the shared libraries, that's all you need:
>> link against the module you want.  BUT, if you want to try to link
>> against the static library (and now I'm talking from memory (it's been
>> a year since I tried to do that, and I don't remember the result, I
>> only remember a bunch of errors)), you'll need to know which libraries
>> you need, which is the magic of pkg-config.
> 
> Static linking should work fine without pkg-config as well, except that
> you would have to list all dependencies, but looking at the opencv4.pc I
> guess they are incomplete anyhow ;).

Yep, I meant that it's insane adding all of the -l... manually.  That's
the "magic" of pkg-config :).

> 
> Cheers Jochen

Cheers,

Alex

-- 
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/



Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-06-21 Thread Jochen Sprickerhof

* Alejandro Colomar (man-pages)  [2021-06-21 17:35]:
Maybe Debian could write separate pkg-config files, and maybe offer 
them to upstream OpenCV (I offer myself to help write them if you 
decide it's a good idea).


It's easier if you talk to upstream about this directly. Adding them to 
Debian only would be incompatible with other distros and be of limited 
use.


Yes, for linking against the shared libraries, that's all you need: 
link against the module you want.  BUT, if you want to try to link 
against the static library (and now I'm talking from memory (it's been 
a year since I tried to do that, and I don't remember the result, I 
only remember a bunch of errors)), you'll need to know which libraries 
you need, which is the magic of pkg-config.


Static linking should work fine without pkg-config as well, except that 
you would have to list all dependencies, but looking at the opencv4.pc I 
guess they are incomplete anyhow ;).


Cheers Jochen


signature.asc
Description: PGP signature


Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-06-21 Thread Jochen Sprickerhof

Control: severity -1 wishlist

Hi Alejandro,

* Alejandro Colomar  [2021-06-16 17:31]:

None of them contain the needed pkg-conig files for their use, making
necessary to install 'libopencv', and making useless the separation into
smaller packages.


You don't need to use pkg-config to build against an OpenCV module, just 
running gcc with the flags you need will work. Adjusting severity 
accordingly.



If you can't install that file in every binary package, you may
create a new binary package that only contains the .pc file,
let's say libopencv-pc, and make all packages depend on it.


This sounds overly complicated to me. I think we should move all 
development files into one libopencv-dev if we want to fix this.

But that's choice of the maintainers.

Cheers Jochen


signature.asc
Description: PGP signature


Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-06-21 Thread Alejandro Colomar (man-pages)

Hi Jochen,

On 6/21/21 2:33 PM, Jochen Sprickerhof wrote:

Control: severity -1 wishlist

Hi Alejandro,

* Alejandro Colomar  [2021-06-16 17:31]:

None of them contain the needed pkg-conig files for their use, making
necessary to install 'libopencv', and making useless the separation into
smaller packages.


You don't need to use pkg-config to build against an OpenCV module, just 
running gcc with the flags you need will work. Adjusting severity 
accordingly.




I had some thoughts about this after sending the email.
The problem in the first place is that opencv doesn't provide separate 
pkg-config files for every module.


Maybe Debian could write separate pkg-config files, and maybe offer them 
to upstream OpenCV (I offer myself to help write them if you decide it's 
a good idea).


Yes, for linking against the shared libraries, that's all you need: link 
against the module you want.  BUT, if you want to try to link against 
the static library (and now I'm talking from memory (it's been a year 
since I tried to do that, and I don't remember the result, I only 
remember a bunch of errors)), you'll need to know which libraries you 
need, which is the magic of pkg-config.



If you can't install that file in every binary package, you may
create a new binary package that only contains the .pc file,
let's say libopencv-pc, and make all packages depend on it.


This sounds overly complicated to me. I think we should move all 
development files into one libopencv-dev if we want to fix this.

But that's choice of the maintainers.
Moving everything into libopencv-dev would create a very big package 
when developers may not need all of opencv (I for example only depend on 
a few modules to build my programs).  One thing that I love of Debian 
packages is that they tend to be very modular compared to other distros. 
 Please don't put everything in one single pkg :-).


Thanks!

Cheers,

Alex

--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/



Bug#989958: libopencv-*-dev: Missing pkg-config file (.pc)

2021-06-16 Thread Alejandro Colomar
Package: libopencv-core-dev
Version: 4.5.1+dfsg-4
Severity: important
Tags: upstream
X-Debbugs-Cc: alx.manpa...@gmail.com

Dear Maintainer,

This bug actually does apply to all of the *-dev libopencv packages.

None of them contain the needed pkg-conig files for their use, making
necessary to install 'libopencv', and making useless the separation into
smaller packages.

If you can't install that file in every binary package, you may
create a new binary package that only contains the .pc file,
let's say libopencv-pc, and make all packages depend on it.


Thanks,

Alex


-- System Information:
Debian Release: 11.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-6-amd64 (SMP w/16 CPU threads)
Kernel taint flags: TAINT_WARN
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libopencv-core-dev depends on:
ii  libopencv-core4.5  4.5.1+dfsg-4
ii  libtbb-dev 2020.3-1
ii  zlib1g-dev 1:1.2.11.dfsg-2

libopencv-core-dev recommends no packages.

libopencv-core-dev suggests no packages.

-- no debconf information