c++ - 如何安装/应用 C++ 补丁?
问题描述
我正在尝试在我的计算机上编译一个旧的遗留项目。我被困住#error "Threading support unavailable: it has been explicitly disabled with BOOST_DISABLE_THREADS
并偶然发现了一个补丁。看到这个问题。我下载了补丁文件。
我该怎么办?我该如何安装它?将其放入指定的文件夹 (...\boost_1_48_0\boost\config\stdlib) 没有帮助。
我正在使用 boost 1.48;Windows 10 上的 CodeBlocks IDE 和 cygwin。
补丁看起来像这样:
Index: boost/config/stdlib/libstdcpp3.hpp
===================================================================
--- boost/config/stdlib/libstdcpp3.hpp (revision 75635)
+++ boost/config/stdlib/libstdcpp3.hpp (working copy)
@@ -33,7 +33,8 @@
#ifdef __GLIBCXX__ // gcc 3.4 and greater:
# if defined(_GLIBCXX_HAVE_GTHR_DEFAULT) \
- || defined(_GLIBCXX__PTHREADS)
+ || defined(_GLIBCXX__PTHREADS) \
+ || defined(_GLIBCXX_HAS_GTHREADS)
//
// If the std lib has thread support turned on, then turn it on in Boost
// as well. We do this because some gcc-3.4 std lib headers define _REENTANT
解决方案
假设您将补丁放在 boost_1_48_0/threads.patch 下,您应该可以使用
cd ...\boost_1_48_0
patch -p0 < threads.patch
之后您可以删除补丁文件。
推荐阅读
- jquery - 在 fontawesome SVG 中替换和动画图标
- domain-driven-design - 可以删除域事件吗?
- android - 什么用(API 28)替换不推荐使用的 getFragmentManager() 方法?
- react-native - 无法从 react-native 取消链接 Testfairy
- javascript - 单词搜索游戏。如何搜索网格并突出显示结果?
- node.js - 谷歌云功能 - Firestore 查询快照大小返回未定义
- java - 客户端只能在同一台计算机上连接到服务器
- java - Ract-Native Android 构建失败 - 无法找到请求目标的有效认证路径
- javascript - 如何将对象包装在代理中以进行调试?
- python - 在 python 中捕获特定错误