文章目录
前言
有时可以在msys2环境里编译调试gtk+3.0程序.本文章介绍msys2环境配置gtk+3.0运行环境及编译调试gtk+3.0代码.
一、配置gtk+3.0环境
在msys2环境中成功安装gtk+3.0及其相关软件后,需要配置gtk+3.0的运行环境.
1.配置执行路径
在msys2环境下打开.bashrc文件,在最后一行增加gtk+3.0安装的路径.如:export PATH=$PATH:/ucrt64/bin
# # Remove any other occurence of this dir, skipping the top of the stack
# for ((cnt=1; cnt <= 10; cnt++)); do
# x2=$(dirs +${cnt} 2>/dev/null)
# [[ $? -ne 0 ]] && return 0
# [[ ${x2:0:1} == '~' ]] && x2="${HOME}${x2:1}"
# if [[ "${x2}" == "${the_new_dir}" ]]; then
# popd -n +$cnt 2>/dev/null 1>/dev/null
# cnt=cnt-1
# fi
# done
#
# return 0
# }
#
# alias cd=cd_func
export PATH=$PATH:/ucrt64/bin
2.验证执行路径
检查gtk+3.0头文件及库文件路径
在msys2环境任意路径下执行:pkg-config --cflags --libs gtk±3.0.
$ pkg-config --cflags --libs gtk+-3.0
-ID:/tools/gtk+/mysys/ucrt64/bin/../include/gtk-3.0 -ID:/tools/gtk+/mysys/ucrt64/bin/../include/pango-1.0 -ID:/tools/gtk+/mysys/ucrt64/bin/../include -ID:/tools/gtk+/mysys/ucrt64/bin/../include/harfbuzz -ID:/tools/gtk+/mysys/ucrt64/bin/../include/cairo -ID:/tools/gtk+/mysys/ucrt64/bin/../include/freetype2 -ID:/tools/gtk+/mysys/ucrt64/bin/../include/pixman-1 -ID:/tools/gtk+/mysys/ucrt64/bin/../include/gdk-pixbuf-2.0 -ID:/tools/gtk+/mysys/ucrt64/bin/../include/libpng16 -ID:/tools/gtk+/mysys/ucrt64/bin/../include/webp -DLIBDEFLATE_DLL -ID:/tools/gtk+/mysys/ucrt64/bin/../include/atk-1.0 -ID:/tools/gtk+/mysys/ucrt64/bin/../include/fribidi -ID:/tools/gtk+/mysys/ucrt64/bin/../include/glib-2.0 -ID:/tools/gtk+/mysys/ucrt64/bin/../lib/glib-2.0/include -LD:/tools/gtk+/mysys/ucrt64/bin/../lib -lgtk-3 -lgdk-3 -lz -lgdi32 -limm32 -lshell32 -lole32 -luuid -lwinmm -ldwmapi -lsetupapi -lcfgmgr32 -lhid -lwinspool -lcomctl32 -lcomdlg32 -lpangocairo-1.0 -lpangowin32-1.0 -lpango-1.0 -lcairo-gobject -lcairo -lharfbuzz -lgdk_pixbuf-2.0 -latk-1.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl
注意:这里的路径:D:/tools/gtk+/mysys/ucrt64/bin/是windows的路径,不是msys2环境的路径,msys2环境的路径是/ucrt64/bin
运行gtk+3.0 demo
在msys2环境任意路径下执行:gtk3-demo
$gtk3-demo
gtk+3.0执行环境成功配置.
二、编译调试gtk+3.0代码
1.源代码文件test.c
test代码如下: