如何使用GUI将外部库和项目导入到我的C++项目中
How to import external libraries and projects into my C++ Project with the GUI?
好吧,所以我了解Java,并且已经在libGdx上玩了很长一段时间了。C++似乎是游戏开发行业的"需要了解的语言",由于我毕业后想成为一名游戏开发人员,我决定学习这种语言只会有益。我已经学习了记忆管理的基础知识,并通过以下方式应用了我的知识:;
- 学习如何解析复杂的文本格式(你知道,任何比xml更复杂的东西)
- 为一种伪语言编写一个解析器,我可以用它序列化C++对象,并表达基本的数学和命令/函数功能
现在我想运用我的知识做一些更有趣的事情;做一个小游戏!我宁愿把学习微处理器和GPU的工作方式推迟到大学,所以我需要使用某种框架。要做到这一点,我需要能够从外部库导入代码。在Java中,我们通常将库放在libs
文件夹中,该文件夹通过使用花哨的maven/gradle设置链接到核心项目。
我设置了GCC编译器,下载了最新的Code::Blocks二进制文件,并将它们安装在我过时的Windows笔记本电脑上(我不得不单独下载编译器和IDE,这真是一个令人讨厌的惊喜,因为我是一个Eclipse男孩)。我使用代码的原因是:块而不是Visual Studio C++?
我身无分文,买不起快递,Community仍然有两次该死的演出,在寒冷的冬日里像糖蜜一样上坡(我的电脑只有两次RAM,因为我太便宜了,无法在一台使用寿命大约为1年的笔记本电脑上多加200美元),而Code::Blocks是500兆欧,运行起来很有魅力。
不管怎样,我已经说够了,问题是在Java中,我们只需在任何自尊的IDE中点击几下就可以导入外部库。C++似乎有所不同。我在谷歌上搜索了几个能充分满足我需求的库,因为我只需要一个渲染库。Oxygine似乎是最好的,Angel2D是我名单上的第二个。我在谷歌上搜索了雅虎,但发现用处不大。事实上,C++似乎缺乏"导入"外部库的概念。#import
似乎只适用于核心语言库和项目文件。我发现最接近的是动态加载库,但这一点还不清楚。
C++和Java中的故事没有太大的不同(尽管#include
在C++中的工作方式与import
在Java中的工作方法截然不同)。在这两种情况下,都有:
- 编译时使用的符号
- 运行时使用的定义/实现
Java中的import
语句和C++中的#include
语句有效地处理了第一个。在这两种语言中,第二种是如何配置/调用/绑定代码的结果;在Java中,哪个*.jar文件实际最终提供导入的符号是由"类路径"决定的,而在C++中,它取决于特定的链接器(对于GCC,传递-lname
表示库的名称,-Lpath/to/dir
指定要查找的候选目录,尽管各种环境变量可以覆盖最终加载的实际库)。
虽然拖放在某些IDE中可能有效,但这确实不是一个好的解决方案(无论是对C++还是Java来说),因为IDE特定的构建系统很难自动化、复制或与其他开发人员共享。您会发现,在行业中,使用构建系统(如Bazel、Gradle、CMake或Make)创建命令行构建配置要常见得多。这些系统使用的配置更容易在IDE之间共享,更重要的是,可以很容易地被连续集成/测试系统调用。大多数IDE支持添加一个构建/测试步骤,该步骤只需调用任意命令即可运行这些构建系统。如果进行了设置,只需编辑构建配置即可添加新的库依赖项。
*很抱歉让人失望,但我已经在Windows上尝试了几个C++IDE,但我不知道其中任何一个可以让你简单地在其中拖放库。
- 将QT项目导入Visual Studio 2019会给我带来很多LNK2001错误
- 如何将 CLion C++ 项目导入 Visual Studio?
- 无法将标准库导入本机 android 项目中的头文件
- Dll在同一解决方案中从 c# 项目导入到 c++ 项目
- 我可以将cocos项目导入虚幻4吗?
- 如何将 OpenMP 和 MPI 导入到大型 CLion CMake 项目中?
- 如何摆脱导入的 make 项目中的 Eclipse 索引器"Type std::... could not be resolved"错误
- 在 macOS 上的 CLion 中导入 Bazel 项目失败
- 在 C# 项目中导入C++ dll
- CLion 导入具有依赖项的现有 cmake 项目
- VS 2017 构建工具失败,出现错误 MSB4019:找不到导入的项目"D:Microsoft.Cpp.Default.props"
- 将项目导入 Android Studio 后出错
- 如何将现有的 c++ 项目导入 XCode8
- 将Qt导入到现有的Xcode项目中
- 如何将我的生成文件项目导入QtCreator
- 如何使用GUI将外部库和项目导入到我的C++项目中
- 如何从.exe项目导入代码进行单元测试
- 将C++项目导入Eclipse-重叠工作区
- 从iOS示例项目导入cpp文件时,找不到架构armv7的符号
- 当项目导入到eclipse中时,.cpp文件被转换为.cc文件