首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用gcc编译imgui源文件

如何使用gcc编译imgui源文件
EN

Stack Overflow用户
提问于 2022-03-19 14:47:24
回答 1查看 594关注 0票数 0

如何用gcc编译imgui源文件

根据build_win32在回购中的一个例子

代码语言:javascript
运行
复制
@REM Build for Visual Studio compiler. Run your copy of vcvars32.bat or vcvarsall.bat to setup command-line compiler.
@set OUT_DIR=Debug
@set OUT_EXE=example_win32_directx11
@set INCLUDES=/I..\.. /I..\..\backends /I "%WindowsSdkDir%Include\um" /I "%WindowsSdkDir%Include\shared" /I "%DXSDK_DIR%Include"
@set SOURCES=main.cpp ..\..\backends\imgui_impl_dx11.cpp ..\..\backends\imgui_impl_win32.cpp ..\..\imgui*.cpp
@set LIBS=/LIBPATH:"%DXSDK_DIR%/Lib/x86" d3d11.lib d3dcompiler.lib
mkdir %OUT_DIR%
cl /nologo /Zi /MD %INCLUDES% /D UNICODE /D _UNICODE %SOURCES% /Fe%OUT_DIR%/%OUT_EXE%.exe /Fo%OUT_DIR%/ /link %LIBS%

前三行并不重要,因为它们定义了输出目录和输出可执行文件,接下来是我在Makefile中包含的Makefile,接下来是我添加的源文件,但是由于某些原因不能像预期的那样工作。

代码语言:javascript
运行
复制
CC = g++
FILES =  main.cpp C:\\Users\\test\\Desktop\\imgui\\backend\\imgui_impl_dx11.cpp C:\\Users\\test\\Desktop\\imgui\\backend\\imgui_impl_win32.cpp C:\\Users\\test\\Desktop\\imgui\\backend\\imgui*.cpp
INCLUDES = -I C:\\Users\\test\\Desktop\\my-project\\Include  -ld3d11 -ld3dcompiler

build: $(FILES)
    $(CC) $(FILES) $(INCLUDES)

Includes文件夹包含来自文件夹backend的所有头文件。

这就是我在运行命令make时得到的结果

代码语言:javascript
运行
复制
make: *** No rule to make target 'C:\\Users\\test\\Desktop\\imgui\\backend\\imgui_impl_dx11.cpp', needed by 'build'.  Stop.

为什么我会有这个错误?

EN

Stack Overflow用户

发布于 2022-03-19 16:59:31

这个答案更多的是感谢HolyBlackCat帮助我在将repo克隆到我使用的桌面后使用MSYS2shell编译MINGW64环境。

代码语言:javascript
运行
复制
export $IMGUI_DIR=C:/Users/test/Desktop/imgui

这使最终命令更短,并给变量IMGUI_DIR下一个imgui的路径。

我们运行命令

代码语言:javascript
运行
复制
g++  main.cpp $IMGUI_DIR/backends/imgui_impl_dx11.cpp $IMGUI_DIR/backends/imgui_impl_win32.cpp $IMGUI_DIR/imgui*.cpp -I $IMGUI_DIR -I $IMGUI_DIR/backends   -ld3d11 -ld3dcompiler -lgdi32  -ldwmapi

哪里

main.cpp是您的代码(要使用的示例)

$IMGUI_DIR/imgui.cpp包含imgui的所有源文件

-I $IMGUI_DIR在imgui文件夹中包含头文件。

-I $IMGUI_DIR/backends包括后端头文件

-ld3d11 -ld3dcompiler -lgdi32 -ldwmapi链接窗口库

imgui开始工作

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71539159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档