【问题标题】:Cannot compile Cairo C code on Windows 10无法在 Windows 10 上编译 Cairo C 代码
【发布时间】:2017-10-01 00:55:24
【问题描述】:

我正在尝试使用 msys64 在 Windows 10 上编译 zetcode lines

我使用如下编译命令:

gcc example.c -o example `pkg-config --cflags --libs cairo gtk+-3.0`

并得到以下错误:

-bash: pkg-config: command not found
example.c:1:19: fatal error: cairo.h: No such file or directory
 #include <cairo.h>

不过我之前做了pacman -S mingw-w64-i686-cairo,安装成功。当我输入 **pacman -Ss mingw-w64-i686-cairo ** 我得到以下信息:

mingw32/mingw-w64-i686-cairo 1.15.2-4 [installed]
    Cairo vector graphics library (mingw-w64)

当我运行 gcc -v 我得到:

使用内置规范。 COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-msys/5.3.0/lto-wrapper.exe 目标:x86_64-pc-msys 配置:/msys_scripts/gcc/src/gcc-5.3.0/configure --build=x86_64-pc-msys --prefix=/usrable-static --enable-version-specific-runtime-libs --with-arch =x86-64 --with-tune=generic --diso --enable-graphite --enable-threads=posix --enable-libatomic --enable-libcilkrts --enable-libg --disable-win32-registry -- disable-symvers --with-gnu-ld --with-gnu-as --disable-isl-version-cith-system-zlib --enable-linker-build-id --with-default-libstdcxx-abi=gcc4 -兼容的 线程模型:posix gcc 版本 5.3.0 (GCC)

最后但同样重要的是,如果我按照website 上的说明进行操作,我可以编译 lines 代码。但是,提供的 GTK3 版本非常旧,无法运行更新的code

Cairo.h 的路径是:

C:\MinGW\include\cairo 用于安装过时(但有效)的 GTK+3

C:\msys64\mingw32\include\cairo

C:\msys64\mingw64\include\cairo 用于使用 msys64 安装较新(但不工作)的 GTK3

MSYS64 试图在哪个目录中查找 Cairo 库?

【问题讨论】:

  • 您确定编译器查找包含的路径是正确的吗?
  • 文件夹 C:\msys64\mingw64\include\cairo 确实存在。如何检查编译器查找包含的位置?
  • gcc -v,我相信。和gcc -I dir/ect/ory 添加一个目录来搜索包含。
  • 无法理解 gcc -v 输出!你有更好的主意吗?
  • 你是怎么编译的?你对编译器的论点是什么?使用 cairo 编译单个 C 文件的标准方法是 gcc foo.c $(pkg-config --cflags --libs cairo)。不知道这样调用 pkg-config inline 是否适用于带有 msys64 的 Windows 10。想法是:将pkg-config --cflags --libs cairo 的输出添加到编译器参数中。

标签: c compilation windows-10 gtk3 cairo


【解决方案1】:

您显示了两条消息。第二行和第三行来自编译器。第一行来自外壳。第一个错误导致了第二个错误。它说pkg-config 命令不存在。你需要安装它的包。使用这个命令(它也会安装其他有用的包):

pacboy sync base-devel

(您无需在pkg-config 命令中命名cairogtk+-3.0 命名它需要的包。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-15
    • 2017-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-19
    相关资源
    最近更新 更多