gpt4 book ai didi

c - 油嘴滑舌 C : program does not recognize GLIB library

转载 作者:太空宇宙 更新时间:2023-11-04 04:44:52 25 4
gpt4 key购买 nike

我的 C 程序在编译时遇到问题。它适用于 Ubuntu 11.04,但当我转移到 Ubuntu 13 时,我遇到了这个问题。

我用这个 Makefile 编译:

all:
gcc -D_GNU_SOURCE -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include \
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include/ -lglib-2.0 -D_FILE_OFFSET_BITS=64 \
-D_LARGEFILE_SOURCE -g -Wall -Wextra -std=c99 -lm *.c -o concatener

我收到这些错误:

undefined reference to « g_str_equal »
undefined reference to « g_str_equal »
undefined reference to « g_array_remove_index »
undefined reference to « g_array_remove_index »

为什么它不识别这些功能?我是否错误地链接到了 glib 库?

最佳答案

gcc 命令看起来不错,我看不出有什么明显的错误,用 -lglib-2.0 链接应该是你想要的1

我猜测的情况是,在您的 Ubuntu 11.04 系统上安装了 glib 开发包,而在您的 13 系统上没有安装它。我觉得包名应该是libglib2.0-dev。


1如果您想更通用一些,可以将硬编码的编译和链接选项替换为

`pkg-config --cflags glib-2.0`

`pkg-config --libs glib-2.0`

关于c - 油嘴滑舌 C : program does not recognize GLIB library,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22273184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com