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

Enable gtk 3 on windows #11013

Closed
wants to merge 7 commits into from
Closed

Conversation

theartful
Copy link
Contributor

@theartful theartful commented Jun 1, 2022

Specify library name and version: gtk/3.24.24

The major blocker for building gtk 3 on windows was LNK1170 error ; that is the linking command for gtk 3 was so big the msvc linker can't handle it even with short_paths on.

This patch fixes this by editing the ninja.build file and removing duplicates in the link arguments.

I also forced some libraries to be shared, since I couldn't get the gtk demo to work without warnings/errors unless that was the case.

Also, gtk 3 requires external icons pack. I copy pasted Adwaita icons theme from my gtk 3 build on linux to make things work. Same problem on vcpkg here microsoft/vcpkg#4417
How do we handle this? Do we include adawita icon pack in the recipe?


  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the conan-center hook activated.

@conan-center-bot

This comment has been minimized.

@Croydon
Copy link
Contributor

Croydon commented Jun 1, 2022

Update to libxml2/2.9.14 to solve the conflict

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 2, 2022

Hooks produced the following warnings for commit 98ae357
gtk/4.6.2
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'setupapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'comctl32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'dwmapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'winmm' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'crypt32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'imm32' but it is not in cpp_info.system_libs.
gtk/4.3.2
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'setupapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'dwmapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'crypt32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'winmm' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'imm32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'comctl32' but it is not in cpp_info.system_libs.
gtk/4.4.0
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'comctl32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'crypt32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'winmm' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'setupapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'dwmapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'imm32' but it is not in cpp_info.system_libs.
gtk/4.2.1
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'winmm' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'crypt32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'setupapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'imm32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'dwmapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'comctl32' but it is not in cpp_info.system_libs.

@conan-center-bot
Copy link
Collaborator

Failure in build 8 (f2b7b860f4f5ecd2a0f4374eb7df2d2b539e6f5a):

  • gtk/4.6.2@:
    Didn't run or was cancelled before finishing

  • gtk/3.24.24@:
    CI failed to create some packages (All logs)

    Logs for packageID 5819167d8823d236a86078908f51c746ee964ef2:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=Visual Studio
    compiler.runtime=MT
    compiler.version=15
    os=Windows
    [options]
    gtk:shared=False
    
    [...]
        fribidi/1.0.10:c5f42e8222de20a56f45e7a11dcef3dd14638a91 - Download
        gdk-pixbuf/2.42.6:9cd8626ee3d30d6e60a70fd19b40c68b8ad05975 - Download
        glib/2.72.0:294dcec5108dfe916533414545d511e40b1cb04b - Download
        gtk/3.24.24:5819167d8823d236a86078908f51c746ee964ef2 - Build
        harfbuzz/4.2.0:b5637bfcf51cc8e2bde13e590f85e8fb47ab704c - Download
        jbig/20160605:c3ea62667bac44be1f7301ff12add5c35363e89f - Download
        libdeflate/1.10:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        libepoxy/1.5.10:9d771a2c4a02e1844eabe7e9ba8fa1b91b04299e - Download
        libffi/3.4.2:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        libgettext/0.21:3ffd5c5eda18d46b0f3c20fd12df93b2bea32c3e - Download
        libiconv/1.16:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        libjpeg/9d:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        libpng/1.6.37:52fa1745eaef80f5cffff84db72228311eacd09c - Download
        libtiff/4.3.0:9c57cb3ed2c5ed81621cac009e6c680482f1c48e - Download
        libwebp/1.2.2:5b73c91630b439ee7c9f524f52537f4e4dc5fe41 - Download
        lzo/2.10:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        opengl/system:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download
        pango/1.50.7:411bdb40e385d5cc95c75b6ab5d07b7d4c0967e4 - Missing
        pcre/8.45:81a4020857bbca0609432c43e6fa205ab35e78c6 - Download
        pixman/0.40.0:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        xz_utils/5.2.5:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        zlib/1.2.12:7bd6f2c3d5c4e48a75805376b58cde753392f711 - Download
        zstd/1.5.2:99a20b99856ca1193feb5e4482d632125a767c33 - Download
    Build requirements
        meson/0.61.2 from 'conan-center' - Downloaded
        ninja/1.10.2 from 'conan-center' - Downloaded
        pkgconf/1.7.4 from 'conan-center' - Downloaded
    Build requirements packages
        meson/0.61.2:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download
        ninja/1.10.2:0a420ff5c47119e668867cdb51baff0eca1fdb68 - Download
        pkgconf/1.7.4:0a420ff5c47119e668867cdb51baff0eca1fdb68 - Download
    
    Installing (downloading, building) binaries...
    
    WARN: atk/2.38.0: requirement glib/2.70.1 overridden by gtk/3.24.24 to glib/2.72.0 
    ERROR: Missing binary: atk/2.38.0:e2c1592b80648911ff184269d89b24455408ddf8
    ERROR: Missing binary: pango/1.50.7:411bdb40e385d5cc95c75b6ab5d07b7d4c0967e4
    atk/2.38.0: WARN: Can't find a 'atk/2.38.0' package for the specified settings, options and dependencies:
    - Settings: arch=x86_64, build_type=Release, compiler=Visual Studio, compiler.runtime=MT, compiler.version=15, os=Windows
    - Options: shared=True, bzip2:build_executable=True, bzip2:shared=False, glib:shared=True, glib:with_pcre=True, libffi:shared=False, libgettext:shared=False, libgettext:threads=windows, libiconv:shared=False, pcre:build_pcre_16=True, pcre:build_pcre_32=True, pcre:build_pcre_8=True, pcre:build_pcrecpp=False, pcre:build_pcregrep=True, pcre:shared=False, pcre:with_bzip2=True, pcre:with_jit=False, pcre:with_stack_for_recursion=True, pcre:with_unicode_properties=True, pcre:with_utf=True, pcre:with_zlib=True, zlib:shared=False
    - Dependencies: glib/2.72.0
    - Requirements: glib/2.Y.Z
    - Package ID: e2c1592b80648911ff184269d89b24455408ddf8
    
    ERROR: Missing prebuilt package for 'atk/2.38.0', 'pango/1.50.7'
    Use 'conan search atk/2.38.0 --table=table.html -r=remote' and open the table.html file to see available packages
    Or try to build locally from sources with '--build=atk --build=pango'
    
    More Info at 'https://docs.conan.io/en/latest/faq/troubleshooting.html#error-missing-prebuilt-package'
    
    
  • gtk/4.4.0@:
    Didn't run or was cancelled before finishing

  • gtk/4.1.2@:
    All packages built successfully! (All logs)

  • gtk/4.3.2@:
    Didn't run or was cancelled before finishing

  • gtk/4.2.1@:
    Didn't run or was cancelled before finishing


Note: To save resources, CI tries to finish as soon as an error is found. For this reason you might find that not all the references have been launched or not all the configurations for a given reference. Also, take into account that we cannot guarantee the order of execution as it depends on CI workload and workers availability.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 2, 2022

Hooks produced the following warnings for commit f2b7b86
gtk/4.1.2
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'winmm' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'setupapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'dwmapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'comctl32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'crypt32' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\gtk-4-1.dll' links to system library 'imm32' but it is not in cpp_info.system_libs.

@theartful
Copy link
Contributor Author

@Croydon Any idea how to fix this "MISSING_DEPENDENCIES" CI error?

@Croydon
Copy link
Contributor

Croydon commented Jun 2, 2022

The binary packages are missing because you overwrote dependencies versions.

Unfortunately, the only way is to work through the dependency graph and update dependencies that appear multiple times to the same version, i.e. creating PRs for all that need updating

@theartful
Copy link
Contributor Author

I also think it's because I made glib a shared library, and atk/pango use static glib by default whether they're shared or static. Any way to get these packages built with this configuration?

I really think that glib should be shared by default on windows.

@Croydon
Copy link
Contributor

Croydon commented Jun 2, 2022

I also think it's because I made glib a shared library, and atk/pango use static glib by default whether they're shared or static. Any way to get these packages built with this configuration?

Unfortunately, no. It isn't possible to build additional configurations

This was referenced Jun 6, 2022
@ghost
Copy link

ghost commented Jun 6, 2022

I detected other pull requests that are modifying gtk/all recipe:

This message is automatically generated by https://github.com/ericLemanissier/conan-center-conflicting-prs so don't hesitate to report issues/improvements there.

@theartful
Copy link
Contributor Author

I will close this and create another PR

@theartful theartful closed this Jun 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants