我在D:\ Program Files \ msys中安装了msys2和mingw64和mingw64-GTK3,该文件的路径中有空格。安装mingw-w64-x86_64-gtk3,mingw-w64-x86_64-make,mingw-w64-x86_64-gcc软件包以进行gtk编程后,我想编译main.c但它抛出此错误:
$ g++ main.c -o myapp_output `pkg-config --cflags --libs gtk+-3.0`
g++.exe: error: Files/msys/mingw64/include/gtk-3.0: No such file or directory
g++.exe: error: Files/msys/mingw64/include/cairo: No such file or directory
g++.exe: error: Files/msys/mingw64/include: No such file or directory
g++.exe: error: Files/msys/mingw64/include/pango-1.0: No such file or directory
g++.exe: error: Files/msys/mingw64/include/atk-1.0: No such file or directory
g++.exe: error: Files/msys/mingw64/include/cairo: No such file or directory
g++.exe: error: Files/msys/mingw64/include/pixman-1: No such file or directory
g++.exe: error: Files/msys/mingw64/include: No such file or directory
g++.exe: error: Files/msys/mingw64/include/freetype2: No such file or directory
g++.exe: error: Files/msys/mingw64/include/libpng16: No such file or directory
g++.exe: error: Files/msys/mingw64/include/harfbuzz: No such file or directory
g++.exe: error: Files/msys/mingw64/include/glib-2.0: No such file or directory
g++.exe: error: Files/msys/mingw64/lib/glib-2.0/include: No such file or directory
g++.exe: error: Files/msys/mingw64/include: No such file or directory
g++.exe: error: Files/msys/mingw64/include/freetype2: No such file or directory
g++.exe: error: Files/msys/mingw64/include: No such file or directory
g++.exe: error: Files/msys/mingw64/include/harfbuzz: No such file or directory
g++.exe: error: Files/msys/mingw64/include/libpng16: No such file or directory
g++.exe: error: Files/msys/mingw64/include/gdk-pixbuf-2.0: No such file or directory
g++.exe: error: Files/msys/mingw64/include/libpng16: No such file or directory
g++.exe: error: Files/msys/mingw64/include/glib-2.0: No such file or directory
g++.exe: error: Files/msys/mingw64/lib/glib-2.0/include: No such file or directory
g++.exe: error: Files/msys/mingw64/include: No such file or directory
g++.exe: error: Files/msys/mingw64/lib: No such file or directory
我的main.c代码:
#include <gtk/gtk.h>
void
hello (void)
{
g_print ("Hello World\n");
}
void
destroy (void)
{
gtk_main_quit ();
}
int
main (int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *button;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (destroy), NULL);
gtk_container_border_width (GTK_CONTAINER (window), 10);
button = gtk_button_new_with_label ("Hello World");
gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (hello), NULL);
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (gtk_widget_destroy),
GTK_OBJECT (window));
gtk_container_add (GTK_CONTAINER (window), button);
gtk_widget_show (button);
gtk_widget_show (window);
gtk_main ();
return 0;
}
我知道错误的原因是“ Program Files”中的空格,但是如何在不将所有msys文件夹剪切到另一个位置的情况下解决此问题?
您不应将MSYS2安装在具有空格的目录中。大多数人将其安装到C:/ msys64。