How to setup wxWidgets in VSCode for GCC?
Answer a question I'm trying to make a GUI-Project with wxWidgets. Instead of using Visual Studio I want to use VSCode with the GCC (MinGW). I'm facing the following problem: I can't compile or run an
Answer a question
I'm trying to make a GUI-Project with wxWidgets. Instead of using Visual Studio I want to use VSCode with the GCC (MinGW).
I'm facing the following problem: I can't compile or run any code which has wxWidgets librarys included. How have the c_cpp_properties.json and the tasks.json files to be configured?
I already went through the instructions for installing wxWidgets using "Cygwin/MinGW Compilation" part "Using plain makefiles:". (https://docs.wxwidgets.org/3.1.2/plat_msw_install.html)
1. cd .../wxWidgets-3.1.2\build\msw
2. mingw32-make -f makefile.gcc (for generating Build=debug per default)
And added following to my files:
tasks.json:
"version": "2.0.0",
"tasks": [
{
"label": "echo",
"type": "shell",
"command": "g++",
"args": [
"-g", "cApp.cpp",
"-I", "D:/Programme/wxWidgets-3.1.2/include/msvc",
"-I", "D:/Programme/wxWidgets-3.1.2/include",
"-L", "${WXWIN}/lib/vc_lib"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
c_cpp_properties.json:
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"${WXWIN}/include/msvc",
"${WXWIN}/include"
],
"browse": { "limitSymbolsToIncludedHeaders": true,
"path": [
"${WXWIN}/include/msvc",
"${WXWIN}/include"
]
},
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE",
"__WXMSW__",
"NDEBUG",
"WXUSINGDLL"
],
"compilerPath": "E:/Programme/MinGW/bin/g++.exe",
"compilerArgs": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}.exe",
"-I", "${WXWIN}/include/msvc",
"-I", "${WXWIN}/include",
"-L", "${WXWIN}/gcc_lib",
"-L", "${WXWIN}/gcc_lib/mswud"
]
}
],
"version": 4
}
I got the following error from my own code while compiling, which uses #include "wx/wx.h"
:
from ${WXWIN}/include/wx/defs.h:45,
from ${WXWIN}/include/wx/wx.h:14,
from ${Project}\VSC-Basic-ProjectSetup\src\cMain.h:1,
from ${Project}\VSC-Basic-ProjectSetup\src\cMain.cpp:1:
${WXWIN}/include/msvc/wx/setup.h:12:6: error: #error "This file should only be included when
#error "This file should only be included when using Microsoft Visual C++"
^~~~~
...
...
...
In file included from ${WXWIN}/include/wx/platform.h:148:0,
from ${WXWIN}/include/wx/defs.h:45,
from ${WXWIN}/include/wx/wx.h:14,
from ${Project}\VSC-Basic-ProjectSetup\src\cMain.h:1,
from ${Project}\VSC-Basic-ProjectSetup\src\cMain.cpp:1:
${WXWIN}/include/msvc/wx/setup.h:125:27: fatal error: ../../../lib/vc_lib /msw /wx/setup.h: N
#include wxSETUPH_PATH_STR
^
compilation terminated.
The terminal process terminated with exit code: 1
${WXWIN}, ${Project} are just placeholders.
Answers
I know it's little bit too late but here is "Hello World" project for VSCode. You can observe all required includes and libraries to successfully compile & link your project in VSCode. All 3 major OS's are included in project. https://github.com/huckor/wxwidgets-vscode
更多推荐
所有评论(0)