我已经用 GTK+ 3 用 C 编写了一个非常基本的测试应用程序,但是当我想启动这个应用程序时,我收到以下错误:
The application was unable to start correctly (0xc000007b)
但我只能通过 GTK+ 3 才能得到这个。
我的代码:
#include <stdio.h>
#include <gtk/gtk.h>
static void activate(GtkApplication *app, gpointer user_data) {
GtkWidget *window;
window = gtk_application_window_new(app);
gtk_window_set_title(GTK_WINDOW (window), "Tutorial");
gtk_window_set_default_size(GTK_WINDOW(window), 200, 200);
gtk_widget_show_all(window);
}
int main(int argc, char **argv) {
printf("Hello, World!\n");
//printf("Ein akustisches Signal mit : (\\a)\a");
printf("\nEin Backspace mit : (\\b) | \bx\n");
printf("Ein Zeilenvorschub mit : (\\t) |\tx");
printf("\n\tC\n\ti\n\ts\n\tt\n\ttoll\n");
printf("\t u\n\t n\n\t d\n");
printf("\t macht Spaß\n");
//Kommentar 1
/* Kommentar 2 */
/*
* Mehrzeiliges Kommentar
*/
GtkApplication *app;
int status;
app = gtk_application_new("org.gtk.example", G_APPLICATION_FLAGS_NONE);
g_signal_connect(app, "activate", G_CALLBACK(activate), NULL);
status = g_application_run(G_APPLICATION(app), argc, argv);
g_object_unref(app);
return status;
}
CMakeLists.txt:
cmake_minimum_required(VERSION 3.7)
project(tutorial)
set(CMAKE_C_STANDARD 99)
set(SOURCE_FILES main.c)
set(PKG_CONFIG_EXECUTABLE "C:/msys64/mingw64/bin/pkg-config.exe")
FIND_PACKAGE(PkgConfig REQUIRED)
PKG_CHECK_MODULES(GTK3 REQUIRED gtk+-3.0)
INCLUDE_DIRECTORIES(${GTK3_INCLUDE_DIRS})
LINK_DIRECTORIES(${GTK3_LIBRARY_DIRS})
add_executable(tutorial ${SOURCE_FILES})
ADD_DEFINITIONS(${GTK3_CFLAGS_OTHER})
TARGET_LINK_LIBRARIES(tutorial ${GTK3_LIBRARIES})
我使用 Clion 2017.1.3、mingw-w64 5.0 和 cmake 3.7.2 (x64) 以及 gdb 7.11.1 (x64)
最佳答案
好的,我修复了自己的错误^^
我在系统变量中设置了 GTK_BASEPATH,并将 PATH 变量设置为旧版本的 GTK(32 位),并使用这些文件作为库。
关于c - 使用 GTK+ 和 C 时应用程序无法启动 (0xc000007b),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44914018/