gpt4 book ai didi

c++ - 跨平台 svn 管理(Makefiles & Visual Studio)

转载 作者:太空宇宙 更新时间:2023-11-04 11:41:01 24 4
gpt4 key购买 nike

我正在开发一款名为 freegemas 的小游戏,它是经典 gem 迷阵的开源版本,用 C++ 编写并使用 gosu作为图形 API。我一直像往常一样在 Ubuntu Linux 下开发它,但前几天我想试一试,我使用 Visual Studio 2005(我以前从未使用过)在 Windows 上编译它。该程序运行完美。

为了在 Windows 上编译它,我手动将所有源文件和头文件复制到 MSVC 上的一个新项目,但我想调整 SVN,这样我就不必在每次编译时都重新创建项目。

因此,问题是:组织 svn 的最佳方式是什么,这样我一方面可以拥有一个 Makefile 来在 Linux 中编译项目,另一方面可以拥有 MSVC 项目的文件?现在我有一个名为 trunk 的简单文件夹,其中包含所有头文件、源文件和资源文件。

我以前从未使用过 Visual Studio,所以我也不知道哪些文件是最重要的。也许其中一些文件是自动生成的,不需要 svn 版本控制。

提前致谢。

最佳答案

您可以将项目文件保存在单独的目录“winbuild”或类似目录中。尽管如此,维护它们仍需要手动交互(即手动添加每个新文件)。您需要上传到 svn 的唯一文件是 *.vcproj(对于 MSVC 2005/2008)和 *.vcxproj(MSVC 2010)。

或者,您可以选择像 CMake 这样的跨平台解决方案,它可以从通用 CMakeLists.txt 生成 makefile 和 Visual Studio 项目文件,这是唯一必须维护的“项目文件”(而不是你的生成文件)。特别是对于像您这样的简单(?)项目(一些标题+来源)。根本不需要包含任何 makefile 或 vcproj 文件,只需 CMakelists.txt 文件就足够了。

还有其他类似 CMake(SCons、boost.jam、jam、premake 等)

它应该是可行的,但需要一些测试和反复试验。

关于c++ - 跨平台 svn 管理(Makefiles & Visual Studio),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3256039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com