glog v0.4.0編譯使用

 

 

glog下載的源碼https://github.com/google/glog配合cmake進行編譯

 

\glog-master\src\windows 將此目錄下的 glog文件夾拷貝到當前工程目錄下

 

#include "glog/logging.h"

#if _DEBUG
#pragma comment(lib, "glog/glogd.lib")
#else
#pragma comment(lib, "glog/glog.lib")
#endif

#define LOG_INFO LOG(INFO)
#define LOG_WARNING LOG(WARNING)
#define LOG_FATAL LOG(FATAL)
#define LOG_ERROR LOG(ERROR)

void main()
{
    google::InitGoogleLogging("Game");  //參數爲自己的可執行文件名
	FLAGS_log_dir = csPath;      // log路徑
	FLAGS_logbufsecs =0;        //緩衝日誌輸出,默認爲30秒,此處改爲立即輸出
	FLAGS_stop_logging_if_full_disk = true;     //當磁盤被寫滿時,停止日誌輸出
	FLAGS_max_log_size =100;  //最大日誌大小爲 100MB

	LOG_INFO << "初始化成功.";

    google::ShutdownGoogleLogging();
}

 

這個時候編譯還是會錯

 

錯誤 LNK2001 無法解析的外部符號 "__declspec(dllimport) public: __thiscall google::LogMessage::LogMessage(char const *,int,int)" (__imp_??0LogMessage@google@@QAE@PBDHH@Z) jfzrcalltest F:\android_game\game\jfzrcalltest\GameToClient.obj 1

 

在預處理定義中添加

GLOG_NO_ABBREVIATED_SEVERITIES

GOOGLE_GLOG_DLL_DECL=

即可解決編譯錯誤問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章