makefile和gtkmm出现问题
Problem with makefile and gtkmm
我目前正试图用gtkmm编写一个简单的程序,但在编译它时遇到了问题。我有几个简单的文件:main.cc,它只包含主函数,test.cc和test.h,它们定义了一个基于类的Gtk::Window,其中有一对按钮,最后是一个简单makefile。
当我试图编译makefile时,问题出现了,它返回:
In file included from main.cc:2:
test.h:12: fatal error: gtkmm.h: No such file or directory
如果我用#include <gtkmm-2.4/gtkmm.h>
替换#include <gtkmm.h>
,则返回错误:
In file included from test.h:12,
from main.cc:2:
/usr/include/gtkmm-2.4/gtkmm.h:87: fatal error: glibmm.h: No such file or directory
我已经搜索了一段时间的解决方案,并在网上四处寻找,但对于其他有类似问题的用户来说,这是因为他们的makefile中没有包含"pkg config--cflags--libs gtkmm-2.4"。不幸的是,这不是我问题的根源,因为我一直都有这个问题。
最奇怪的是,当我不使用makefile时,它可以工作。如果我从main.cc中获取主函数并将其放入test.cc文件中,则键入:
g++ test.cc -o output `pkg-config --cflags --libs gtkmm-2.4`
进入控制台,它工作得很好。这只是一个临时的解决方案,因为我已经到了需要多个类的地步。我不知道这是否是安装make或gtkmm的问题,我已经尝试重新安装两者,但都没有成功。我不知道还能尝试什么。
最后,如果它有帮助的话,我正在运行Ubuntu 10.10,带有g++版本4.4.5
感谢您的帮助
生成文件如下:
main: main.o
@echo "Main"
@g++ -g main.cc test.o -o output `pkg-config --cflags --libs gtkmm-2.4`
test.o:
@echo "Test"
@g++ test.cc -o test.o `pkg-config --cflags --libs gtkmm-2.4`
clean:
@clear
@rm -f *.o
我遇到了同样的问题,我通过在构建的两个步骤(编译和链接)中添加pkg-config gtkmm-3.0 --cflags --libs
解决了这个问题。我的生成文件:
CC=g++
CFLAGS=-c -Wall
LDFLAGS=
SOURCES=WatsonGui.cpp
OBJECTS=$(SOURCES:.cpp=.o)
EXECUTABLE=watsonGui
all: $(SOURCES) $(EXECUTABLE)
$(EXECUTABLE): $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) -o $@ `pkg-config gtkmm-3.0 --libs`
.cpp.o:
$(CC) $(CFLAGS) $< -o $@ `pkg-config gtkmm-3.0 --cflags`
clean:
rm -rf *.o watsonGui
请注意,用于pkg配置的引号类型很重要,如果您使用'而不是´,则不起作用。
第页。S.:我是makefiles的新手,所以我不太确定自己做了什么。
此错误:
/usr/include/gtkmm-2.4/gtkmm.h:87: fatal error: glibmm.h: No such file or directory`
建议您必须将glimm-2.4添加到pkg配置搜索:
main: main.o
@echo "Main"
@g++ -g main.cc test.o -o output `pkg-config --cflags --libs gtkmm-2.4 glibmm-2.4`
test.o:
@echo "Test"
@g++ test.cc -o test.o `pkg-config --cflags --libs gtkmm-2.4 glibmm-2.4`
clean:
@clear
@rm -f *.o
- 警告处理为错误这里有什么问题
- 最小硬币更换问题(自上而下方法)
- 为"adjacent"变量赋值时出现问题
- 我的神经网络不起作用 [XOR 问题]
- 在Ubuntu 16.04上安装Cilk时出现问题
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 编译包含字符串的代码时遇到问题
- Project Euler问题4的错误解决方案
- 问题:什么是QAbstractItemView::NoEditTriggers的反面
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- 在进程中对同一管道进行读取和写入时C++管道出现问题
- 静态数据成员的问题-修复链接错误会导致编译器错误
- C++ 雷神库 - 使用资源加载器类时出现问题(不命名类型)
- 一个关于在C++中重载布尔运算符的问题
- 首要问题的答案让值班员搞错了
- setlocale的C++土耳其字符串问题
- C++ & Gtkmm 的 Makefile 问题
- GTKMM:在叠加层上移动日历(裁剪问题)
- Gtk::TextView::modify_font从GTKMM 2.4移动到GTK3.0时的问题
- makefile和gtkmm出现问题