Member 13536260 Ответов: 1

Wxwidget + visual studio + головная боль


Я думаю, что мне действительно нужна помощь прямо сейчас.

Я скачал установщик Windows wxWidget и построил его с помощью Visual Studio. Все прошло нормально (за исключением того, что я ждал 1 час, ожидая, когда MSVC построит его). Теперь я создал небольшой проект с этим источником:

MainEdit.h
#pragma once
class MyProjectApp :
	public wxApp
{
public:
	MyProjectApp();
	virtual ~MyProjectApp();
	virtual bool OnInit() override;
};

CodeEdit.cpp
#include <C:\wxWidgets-3.1.1\include\wx\wxprec.h>
#include "MainEdit.h"

#ifdef _DEBUG
#pragma comment(lib, "wxbase31ud.lib")
#else
#pragma comment(lib, "wxbase31u.lib")
#endif
MyProjectApp::MyProjectApp()
{
}

MyProjectApp::~MyProjectApp()
{
}

bool MyProjectApp::OnInit()
{
	wxFrame* mainFrame = new wxFrame(nullptr, wxID_ANY, L"MyProject");
	mainFrame->Show(true);
	return true;
}

wxIMPLEMENT_APP(MyProjectApp);


Я создал новый путь в переменных окружения с именем WXWIN и поместил его в путь "C:\wxWidgets-3.1.1". Я отредактировал каталоги Include в MSVC для этого "
$(WXWIN)\include;$(WXWIN)\wx;$(WXWIN)\include\msvc;$(WXWIN)\;$(IncludePath)

Тогда библиотечные каталоги к этому:
$(WXWIN)\lib\vc_x64_lib;$(LibraryPath)


Теперь это вызывает у меня головную боль: (а вот и ошибки)
Error	C1083	Cannot open include file: 'wx/defs.h': No such file or directory	CoolEdit	C:\wxWidgets-3.1.1\include\wx\wxprec.h	12	

Error (active)	E0035	#error directive: "wxUSE_CONSOLE_EVENTLOOP must be defined, please read comment near the top of this file."	CoolEdit	c:\WxWidget-3.1.1_bin\include\wx\chkconf.h	104	

Severity	Code	Description	Project	File	Line	Suppression State
Error (active)	E1696	cannot open source file "../../../lib/vc_lib/msw/wx/setup.h"	CoolEdit	c:\WxWidget-3.1.1_bin\include\msvc\wx\setup.h	123	

Error (active)	E0035	#error directive: "wxUSE_ACTIVEX must be defined."	CoolEdit	c:\WxWidget-3.1.1_bin\include\wx\msw\chkconf.h	19	


У меня всего 50 ошибок.

Я вернусь, наверное, мне нужно найти что-нибудь от этой головной боли

Что я уже пробовал:

Я попытался изменить + добавить каталоги Include/Library, но все еще есть ошибки

1 Ответов

Рейтинг:
0

Jochen Arndt

Избегайте использования абсолютных путей при включении файлов. Потому что вы добавили путь к директории Include просто использовать обычный заголовочный файл название:

#include <wxprec.h>
Если это не работает, используйте (я до сих пор не использовал wxWidgets с VS):
#include <wx\wxprec.h>