Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cairo build failure, static library target #11640

Closed
jpcima opened this issue May 28, 2020 · 5 comments · Fixed by #11829
Closed

cairo build failure, static library target #11640

jpcima opened this issue May 28, 2020 · 5 comments · Fixed by #11829
Assignees
Labels
category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist

Comments

@jpcima
Copy link

jpcima commented May 28, 2020

Host Environment

  • OS: Windows x86 in Appveyor
  • Compiler: Microsoft Visual Studio 2017 MSVC 19.16.27035.0

To Reproduce
Steps to reproduce the behavior:
vcpkg install cairo:x86-windows-static

Failure logs

Starting package 10/14: glib:x86-windows-static
Building package glib[core]:x86-windows-static...
-- Note: glib only supports dynamic library linkage. Building dynamic library.
CMake Error at scripts/cmake/vcpkg_check_linkage.cmake:42 (message):
  Refusing to build unexpected dynamic library against the static CRT.  If
  this is desired, please configure your triplet to directly request this
  configuration.
Call Stack (most recent call first):
  ports/glib/portfile.cmake:10 (vcpkg_check_linkage)
  scripts/ports.cmake:94 (include)

Additional context
Currently it's not possible to build cairo statically, because this pulls static glib, and Glib is only compatible with dll builds.

Glib however, is an optional dependency of cairo, which there exists a configure option to disable (--disable-gobject).

It would be helpful if we can somewhat have a strategy that can build target unofficial::cairo::cairo, and skip unofficial::cairo::cairo-gobject.
(such as to make it a separate package, or what else may be appropriate)

@LilyWangL LilyWangL added the category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist label May 29, 2020
@NancyLi1013
Copy link
Contributor

Hi @jpcima
Thanks for posting this issue.
In this case, we might consider to set gobject as a feature for cairo and remove the dependency of glib.
What's your opinion?

@jpcima
Copy link
Author

jpcima commented May 29, 2020

In this case, we might consider to set gobject as a feature for cairo and remove the dependency of glib.

Hi, I think it seems an adequate approach to solving this problem, and I would find it greatly helpful 👍
Thanks.

@NancyLi1013
Copy link
Contributor

Thanks for your feedback. I will try to fix this issue in these days.

@NancyLi1013
Copy link
Contributor

@jpcima
I submitted a PR to fix this issue just now.
Could you please help confirm if it can work for you?

@jpcima
Copy link
Author

jpcima commented Jun 9, 2020

It's a success with the PR #11829. Thanks.
The software built correctly in both architectures.
https://ci.appveyor.com/project/SFZTools/sfizz/builds/33421287/job/eqhioqfssvte0paw

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-feature The issue is with a library, which is requesting new capabilities that didn’t exist
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants