天天看點

ACE_TRACE無法顯示消息

我用的是APG自帶的例子。無論在Windows和Linux作業系統下面都無法輸出ACE_TRACE的資訊?

源碼:

----------------------------------------------------------

#include "ace/Log_Msg.h"

void foo (void);

int ACE_TMAIN (int, ACE_TCHAR *[])

{

ACE_TRACE(ACE_TEXT ("main"));

ACE_DEBUG ((LM_INFO, ACE_TEXT ("%IHi Momn")));

foo();

ACE_DEBUG ((LM_INFO, ACE_TEXT ("%IGoodnightn")));

return 0;

}

void foo (void)

ACE_TRACE (ACE_TEXT ("foo"));

ACE_DEBUG ((LM_INFO, ACE_TEXT ("%IHowdy Pardnern")));

輸出:

---------------------------------------------------------

[root@myserver projs]# ./tmp

Hi Mom

Howdy Pardner

Goodnight

需要設定宏ACE_NTRACE,預設狀态是不記錄TRACE資訊的。

#define ACE_NTRACE 0  記錄日志

#define ACE_NTRACE 1  不記錄日志

可以使用一下兩種方法解決問題:

1、修改檔案代碼

#define ACE_NTRACE 0 

error:

記住不要把上面的順序給寫反呢

寫成了:

#define ACE_NTRACE 0

2、在編譯指令上增加定義宏的指令

可以增加如下選項  -DACE_NTRACE

繼續閱讀