被boost的date_time库郁闷了一把

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情
boost的date_time库会神不知鬼不觉的把linux下面的环境变量TZ设成是GMT,使得系统中其他部分代码算时间出错了。看来以后用date_time要小心了。不过,如果整个系统都用boost::date_time的话就应该没有问题了。可以这样实施起来改动就比较大了。解决的办法,现在想到的就是试试看能不能在系统初始化的时候将boost::date_time的时区改成本地时区,这样环境变量TZ可能就跟原来一致了。

后记:
后来经过单元测试,发现不是boost::date_time这个库引起系统时间的改变,而是另外一个库log4cxx。

总结经验:
1、使用第三方库时需要验证一下是否跟现有的具有类似功能的代码发生冲突,以免导致出现结果不一致的情况。
2、定位错误的工作需要严谨一些。如果bug定位出错,不但bug得不到及时解决,而且还会使解决bug的总代价提高很多。
boost:asio编译 参考:http://hi.baidu.com/need_for_dream/blog/item/c14a28086a504c33e92488b5.html 环境: VS2010,          boost1.38.0,解压缩后放在,D:/boost_1_38_0。  編譯bjam(这个我没有试过,转过来以后参考)利用Visual Studio 2005 Command 阅读详情

相关推荐

使用boost::local_time模块创建自定义时区和posix时区的简单示例

首先,让我们看看如何创建一个自定义时区。自定义时区允许我们定义自己的时区规则,例如偏移量、夏令时规则等。以下是一个简单的示例,展示了如何创建一个名为"MyTimeZone"的自定义时区,并设置偏移量为+05:00。// 创建自定义时区// 获取当前时间// 将当前时间转换为自定义时区// 打印转换后的时间信息std::cout

BitSlinger的博客 333

cannot find the flags to link with Boost date_time 错误修复

在程序中如果用到date_time,而Boost又没有编译进去,就会报cannot find the flags to link with Boost date_time错误,解决办法是: 在编译Boost时加上date_time的编译选项 ./bootstrap.sh --with-libraries=python,signals,thread, ./b

yuanya的专栏 1644

libboost_date_time-vc120-mt-1_61.lib

caffe,windows,,vs2013, libboost_date_time-vc120-mt-1_61.lib

boost date_time使用

1  posix_time 使用的时候 boost::posix_time::ptime ptime1 = boost::posix_time::time_from_string(std::string(str1))); boost::posix_time::ptime ptime2 = boost::posix_time::time_from_string(std::string(str2)

3373

一个用到Boosttime_duration类而产生的bug

测试小组提交在ClearQuest上的一个Defect引起了我的注意,当一个逻辑中输入日期为1940年以前的任何一个值时,会产生异常,程序逻辑不正常,直觉告诉我,这有可能是其中用到时间比较时出了错,果不其然,在经过仔细定位后发现一段程序: 而跟踪到这里时发现,计算出的这个diff居然是负值! 仔细查阅文档,发现我的boost date_time在编译时选择了time_duration的ticks

Tim的专栏 2421

boost之日期 时间(date_time)

如果把时间想象成一个向前和向后都无限延伸的实数轴,那么时间点就是数轴上的一个点,时间段就是两个时间点之间确定的一个区间,时长(时间长度)则是一个有正负号的标量,它是两个时间点之差,不属于数轴。时间点、时间段和时长三者之间可以进行运算,例如“时间点+时长=时间点”,“时长+时长=时长”“时间段∩时间段=时间段”、“时间点∈时间段”,等等,但有的运算也是无意义的,如“时间点+时间点”、“时长+时间段”,等等。这些运算都基于生活常识,很容易理解,但在编写时间处理程序时必须注意。

qq_62309585的博客 2051

[已解决]Target “xxx” links to target "Boost::filesystem" but the target was not found.

安装cctag时,boost出现问题,最初是版本不对,切换版本后一直检测不到,更换为python2.7编译后,可以顺利查找出来,但又出现以下问题 CMake Error at src/CMakeLists.txt:134 (add_library): Target "CCTag" links to target "Boost::atomic" but the target was not ...

weixin_45617478的博客 1万+

【VS2019+Boost-v1.72.0报错】LNK1104 无法打开文件“libboost_date_time-vc142-mt-gd-x64-1_72.lib”

错误如下: 学习到《Boost 程序完全开发指南》第二章时报了下面这个错: 情况分析: 上篇博客《VS2019配置Boost-v1.72.0》中我已经配置好了Boost的环境,在VS中新建一个工程时,我都会在 打开项目属性 -> VC++目录 -> 修改包含目录和引用目录中进行环境的修改,如下图: 按理说相关的都已包含进去了,不会再报错了,一开始我还以为是编译Boost的时候对于boost_date_time这个模块没有编译成功,于是我去翻了下,发现boost_date_time是躺在我

boss-dog 3902

词汇扩展阶段-开始思考字母

为啥可以达到万词,万词为啥可以透过嘴巴自由表达?万词是一点点强制记忆完成的吗?万词是不是一词一意这样一点点记忆起来的吗?

lxlmycsdnfree的博客 3250

ubuntu中程序使用boost构建过程报Boost::serialization,Boost::thread“but the target was not found错误

原因是没找到Boost::serialization和Boost::thread依赖,用。安装boost,确保boost中有相关的组件。构建使用了boost的cmake项目时,报。cmakelist中需要添加对应的组件,

qq_25776687的博客 1104

Boost日期时间date_time)—时间

目录 一、基本介绍 二、时间长度 三、时间精确度 四、时间点(ptime)-基本介绍 五、时间点(ptime)-对象创建 六、时间点(ptime)-基本运用 七、时间区间 八、时间迭代器-个人认为这个用处还比较多 九、扩展-高精度计时器 一、基本介绍 引入头文件:#include <boost/date_time/posix_time/posix_time.hpp> 二、时间长度 int main(int argc, char **argv) { // 创建时间长度,

红尘客的博客 3503

Boostdate_time

Boost.Date_Time是一个功能丰富的时间日期处理,它提供了多种用于日期和时间计算、格式化、转换和输入输出的功能。

qq_33271629的博客 604

解决Could NOT find Boost 或 Could NOT find Boost(missing:thread date_time iostreams serialization)的思路

解决cloud not find boost问题

alien_y的博客 8258

linux boost 编译出错,Boost的release版本编译及一个getruntimeclass的错误分析

首先下载bjam.exe,复制到 $BOOST$ 目录下。或者自己生成bjam,打开Visual Studio 2008 命令提示窗口$BOOST$\tools\jam\src,执行 build.bat 会在$BOOST$\tools\jam\src\bin.ntx86 生成 bjam.exe 文件。复制文件 bjam.exe 文件到 $BOOST$\下。1.完全编译安装:bjam --tools...

weixin_35773130的博客 589

Boost使用----date_time

Boost中使用了timer、date_time、chrono处理时间与日期的问题。在上层开发中,经常碰到不同时间体系的处理,如格里高利历、UTC等,date_time解决了大部分蕾丝的问题,是一个较为全面、灵活的时间和日期类,并且可以与C的传统时间结构tm相互转换,提供底层支持。

juffson的博客 1003

LNK1104: 无法打开文件“libboost_date_time-vc142-mt-gd-x64-1_72.lib“

LNK1104: 无法打开文件"libboost_date_time-vc142-mt-gd-x64-1_72.lib" Qt5.13新建项目使用Visual Studio 2019中成功运行的代码,链接器报错 #调用外部的代码 添加两个自己的静态和一个boots生成的,前面两个没有问题,boots的报错:无法打开文件"libboost_date_time-vc142-mt-gd-x64-1_72.lib" LIBS += -LF:\DCS110\build64\DeviceCommunicatio

ghostAandB的博客 5230
上一篇: Boost的几个常用组件的使用(转载)
下一篇: D语言学习笔记(1)——编译和运行环境以及“Hello World”
yyquick
博客等级 码龄24年 1粉丝 5原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值