问题标签 [log4cplus]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 使用 CMake 构建和使用 Log4cplus
社区,
我在构建和使用带有 Embarcadero 的 Log4cplus 库时遇到以下问题。首先,我从http://sourceforge.net/p/log4cplus/wiki/Home/下载库,然后导航到要构建库的目录,然后键入 cmake -G "Borland Makefiles" mypathtotherootomypreviousdownload。然后它说,构建文件已写入当前目录。现在我启动 MSYS sh.exe 并键入 make。这也有效。我得到一个 bin 文件夹,其中包含库的各种工作测试(作为 exe 文件)。在这个 bin 文件夹中还有一个 dll log4cplusUD.dll。现在我还在 src 文件夹中找到了相应的 LIB log4cplusUD.lib。我当然熟悉如何将动态库与 Embarcadero 静态链接。但是在尝试编译时
我收到链接器错误,未解析外部符号 log4cplus::Logger::getInstance。
上面的代码只是从 sh.exe 运行 make 时编译和运行良好的测试之一。那么我做错了什么?
我还尝试将上面的 main.cpp 与 log4cplusUD.lib 与以下 CMakeLists.txt 文件链接起来
但我得到相同的链接器错误!
html - 在 C++ linux 中使用 log4cplus 在 html 文件中写入日志
我们正在使用 Log4cplus 在基于 Linux 的家用电器中生成日志。这些日志当前在运行 Web 服务器的家用电器上可用。我们还通过 Web 浏览器显示此日志文件。但是由于日志文件是文本(即不是html格式),文件没有格式化,很难单独查看每个日志。
我们希望通过 Web 服务器查看这些日志,日志格式为 html。log4j 支持 html 格式的输出日志,但是我们还没有找到使用 log4cplus 生成 html 格式日志的方法。这篇文章是为了收集关于如何使用 log4cplus 做到这一点的想法。无论是在 log4cplus 中还是在后处理中,但都是实时的,因为我们正在实时查找日志。
c++ - log4cplus:ERROR Re-initializing default context after it has been destroyed
我正在运行 Win32 应用程序(它是基于谷歌测试的单元测试)。在运行结束时,打印测试摘要时,出现以下故障:
似乎 log4cplus 默认上下文已经被破坏了。知道如何防止它在我的所有消息都被打印之前被破坏吗?
log4cplus - 使用 Log4Cplus (Windows) 从多个进程记录到同一个日志文件
我们的一些客户使用我们的应用程序的方式是安装到网络驱动器上,然后每个用户在他们的本地机器上执行 exe。因此,我们有多个进程写入同一个日志文件。我已经用一些测试程序测试了这个配置,我得到了这个错误。
我假设这是由于其中一个进程记录器尝试重命名文件时写入的文件。
这是我的属性文件。
我的问题是,如果 Log4Cplus 有办法处理这个问题,或者这只是一个通用的日志记录?使用 AsyncAppender 会起作用吗?如果是这样,你能举例说明如何使用它吗?我找不到任何东西。
谢谢!
c - 使用 log4cplus 时可以使用 printf 格式吗?
log4cplus 是否提供了以 C-Style / printf 格式打印的 API?
原因:我想在C代码中使用log4cplus(除了C++),不想事先准备好字符串。
c++ - 使用额外库时链接失败
glog
当我使用库(代码中未使用 Google 的日志库)构建一个简单的 C++ 程序时,我收到“未定义的引用”错误。当我-lglog
从构建命令中删除时,链接成功。
请注意,我添加到链接的库根本没有在代码中使用,尽管它导致构建失败。此外,glog
和log4cpp
库应该是独立的。
你能解释一下这种不寻常的行为吗?
环境:Ubuntu 14.04
代码:
工作构建命令:
构建命令失败:
编辑:
此命令也成功构建:
此命令失败(更改库的顺序):
这成功了:
这失败了:
编辑2:
我研究了重复的建议(1) 和(2),以发现那里可能对我有用,但结果却是无关紧要的,因为这些案例并没有解决将代码中未使用的库添加到的情况链接并使其失败。
编辑 3:
我环境中的文件(glog 库、log4cpp 库、使用的 log4cpp 标头和 test.cpp):log_test.zip。
c++ - log4cplus - 在写入之前刷新文件
我的需求很简单:
使用 log4cplus,我希望能够在日志文件中写入日志,并在每次写入之前刷新日志文件。这样,当我运行我的应用程序时,我的日志文件中只有一行。
我试过 append=False 属性,但它只在启动时刷新日志文件。
我可以用 C++ 手动完成,但我不想编写 C++ 代码,因为该产品已经在生产中。
任何想法 ?
谢谢,
c++ - 未定义对 Logger::getInstance() 的引用 - 但仅在某些情况下
我正在使用 log4cplus(从当前的 git master 编译),但链接器收到未定义的引用错误。但是,这些错误仅发生在某些类中。
一般来说,每个类都有以下形式:
标头 (.h)
源 (.cpp)
用法
记录器在类中使用,如下所示:
在编译工作时,链接器会引发未定义的引用错误
和
对于某些课程。我已经从工作班复制了记录器部分:相同的结果。
用类成员替换静态记录器也不起作用——getInstance()
没有找到。
这个问题的解决方法是使用 root-logger 代替;这将编译/链接(即使getRoot()
是同一类的一部分!?):
但是还有未定义的引用错误
为了确保没有错字,我使用这些宏进行声明/定义:
同样的结果,那些以前有效的也有效,而那些不……没有。
更多信息:
- Log4cplus 使用 -llog4cplusSU 链接(也使用 log4cplusS 进行了测试)并从它的 git master 编译
- GCC 4.9 – 使用 C++11
- 用于构建项目的 Eclipse CDT
- Log4cplus 在 main 中初始化
- 所有类都使用相同的编译器和标志编译
- 完全清理和构建项目
- 所有文件都以相同的方式编译/链接
- const / not const 没有效果
结果nm <NAME>.o | grep -i log4cplus
:
工作对象
带有未定义的引用:
失败的最小类
c++ - log4cplus RollingFileAppender BAD_ACCESS 错误
- 以上是ios App中log4cplus crash的日志。我设置了 FileMaxSize = 500Kb 和 MaxBackUp = 5。
- 因此,经过 5 次日志文件备份以及第 6 次备份的时间,然后它就崩溃了。
- 我制作了一个静态库,在其中制作了 8 个 Logger 实例,并且全部都将日志转储到同一日志文件中。
- 使用的多线程环境