将Eclipse CDT配置为使用wxWidgets
Configuring Eclipse CDT to work with wxWidgets
我一直在尝试配置Eclipse CDT(在Ubuntu Precise上)以使用wxWidgets编译程序。我收到了Eclipse的错误,但该程序使用提供给我的makefile编译得很好。我已经按照中给出的说明http://wiki.wxwidgets.org/Eclipse#Linux,但仍然没有成功。(也就是说,我相信我已经正确地设置了编译器和链接器标志。)
我的头文件如下:
#ifndef READIMAGE_H_
#define READIMAGE_H_
class Image{
wxImage *loadedImage;
public:
Image(string filename);
void loadImage(string filename){};
};
#endif /* READIMAGE_H_ */
我的源文件如下:
#include <wx/wx.h>
#include <wx/image.h>
#include <iostream>
using namespace std;
#include "readImage.h"
Image::Image(string file){
loadImage(file);
}
int main(){
Image img("example.jpg");
}
我收到的错误是:
make: *** [Image_IO] Error 1
Type 'wxImage' could not be resolved
undefined reference to `wxRect2DInt::operator=(wxRect2DInt const&)'
undefined reference to `wxRect2DInt::operator=(wxRect2DInt const&)'
undefined reference to `wxThread::~wxThread()'
如果这有帮助,makefile如下所示:
INCS =
LIBP =
ARCH_CFLAGS =
#The code below should be used rather than the
#specific 2.4 version one. With this one we ensure
#that we run the latest release of wxGTK rather
#than a specific one:
WX_LIBS = `wx-config --libs --gl-libs`
WX_FLAGS = `wx-config --cxxflags`
LIBS = $(WX_LIBS)
ARCH_CFLAGS =
EXES = readImage
CFLAGS = $(ARCH_CFLAGS) $(WX_FLAGS) -Wall -Wno-unused -Wno-reorder
-O3 -fomit-frame-pointer -fforce-addr
# ------------------
all : clean $(EXES)
clean :
find -name "*.o" -exec rm {} ;
rm -f ${EXES} -R
# ------------------
readImage : readImage.o
g++ readImage.o -o readImage $(ARCH_CFLAGS) $(LIBS) $(CFLAGS)
readImage.o : readImage.cpp readImage.h
g++ -c readImage.cpp $(ARCH_CFLAGS) $(INCS) $(WX_FLAGS)
# ------------------
有什么想法吗?
非常感谢。
编辑
在C++编译器和链接器的命令行模式中(分别为"项目">"属性">"GCC C++编译器"answers"GCC C++链接器"),如果我将${FLAGS}移动到模式的末尾,则我只收到一个错误:
Type 'wxImage' could not be resolved
注意我没有收到任何包含的警告,这表明编译器和链接器可以找到库。
问题已解决。
在完成EDIT文章中的步骤后,我尝试通过终端在makefile上运行make命令。这个程序编译得很好,所以我认为它只是代码分析工具。我最终转到项目>属性>C/C++常规>代码分析>启动,在键入时取消选择运行,并选择run with build选项。
我假设这会迫使Eclipse使用编译器输出来创建错误和警告,而不是使用其他内置方法。也许有人可以澄清这一点。
注意:在步骤生效之前,我需要重新启动eclipse。
非常感谢。
配置eclipse以使用wxWidgets有点复杂。根据我的经验,需要相应地设置一些编译器标志和链接器选项,这可能会导致混淆beginer。
在我使用eclipse的经验中,我发现了一些简单的方法,可以让eclipse在wxWidgets上运行良好,请检查这个简化的安装程序,它将帮助您配置eclipse。
安装程序最初的目标是树莓派板,因为它包含使用buildroot构建的跨编译器工具链。但也提供了Linux x86_64的目标构建,正如已经在Ubuntu 14.04-LTS上测试的那样
请尝试并告知您的里程数。
http://yasriady.blogspot.co.id/2016/01/raspberry-pi-toolchain.html
Rgrds/Ddy
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- 无法找到/读取配置文件.conf-FileIOException
- 在WSL:configure_file上对config_file的每次调用都失败:配置文件时出现问题
- 一种在C++中读取TXT配置文件的简单方法
- 生成MRPT库时cmake配置失败
- FFMPEG配置文件级别id大小无效
- 什么是事件表 (wxWidgets)?
- 如何通过Conan和CMake找到用于pkg配置的.pc文件
- 无法编译wxWidgets Hello World
- 配置文件解析器仅返回以前的值
- 我的程序有一个保存配置文件的GUI,如何双击此配置文件以直接加载带有配置数据的GUI?
- CMake WxWidgets项目成功地在Linux上构建,但没有在Windows上构建
- 更改命令行 qt5 源代码构建配置的正确/快速方法
- 是否可以配置提升日志刷新?
- 如何配置Visual Studio Code以使用cygwin,cmake和gcc进行调试
- 内存所有位置 wxWidgets
- С++ wxWidgets:代码架构,设计原则和模式
- C/C++:打印(配置)头文件的内容
- 将Eclipse CDT配置为使用wxWidgets
- 在您指定的 wxWidgets 目录中找不到匹配的调试配置