https://www.byvoid.com/blog/c-int64/
我要解決的幾個問題
消費線程 c++
預編譯技術要研究一下
http://www.cnblogs.com/cofd/archive/2007/11/05/949962.html
我只想當個程序員
https://www.byvoid.com/blog/c-int64/
我要解決的幾個問題
消費線程 c++
預編譯技術要研究一下
http://www.cnblogs.com/cofd/archive/2007/11/05/949962.html
1. 簡單解決問題的方式是
找cpp 缺少 #include "stdafx.h" 添加。并且使用 《預編譯選項》
2.被動解決方式
又分為2種方式
1.選擇排除 lib 再附加lib nafxcwd.lib LIBCMTD.lib 附加的順序不一樣來操作。
2.另外一種簡單的做法 在附加lib處添加 nafxcwd.lib
使用 Client.lib 會出現問題,libc 和mfc的庫沖突問題。
這邊可以在編譯時加lib參數 nafxcwd.lib。但是我項目本身不使用mfc。
。
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) 已經在 LIBCMTD.lib(new.obj) 中定義
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) 已經在 LIBCMTD.lib(dbgdel.obj) 中定義
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z) 已經在 libcpmtd.lib(newaop.obj) 中定義
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete[](void *)" (??_V@YAXPAX@Z) 已經在 LIBCMTD.lib(delete2.obj) 中定義
1> 正在創建庫 ..\bin\Service.lib 和對象 ..\bin\Service.exp
1>..\bin\Service.exe : fatal error LNK1169: 找到一個或多個多重定義的符號
1> 正在搜索庫
1> 正在搜索 ../lib/CMDClient.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\kernel32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\user32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\gdi32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\winspool.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\comdlg32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\advapi32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\shell32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\ole32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\oleaut32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\uuid.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\odbc32.lib:
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\odbccp32.lib:
1> 正在搜索 D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\LIBCMTD.lib:
1> 正在搜索 D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\OLDNAMES.lib:
1> 正在搜索 D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\atlmfc\lib\uafxcwd.lib:
1>uafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) 已經在 LIBCMTD.lib(new.obj) 中定義
1>uafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) 已經在 LIBCMTD.lib(dbgdel.obj) 中定義
1> 正在搜索 C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\msimg32.lib:
MSDN 解決問題鏈接
http://support.microsoft.com/kb/148652/zh-cn
CRT 庫對 new、delete 和 DllMain 函數使用弱外部鏈接。MFC 庫也包含 new、delete 和 DllMain 函數。這些函數要求先鏈接 MFC 庫,然后再鏈接 CRT 庫。
該問題有兩種解決方法。第一種方法是強制鏈接器按照正確的順序鏈接庫。第二種方法是由您親自查找導致問題的模塊并糾正它。
注意 以下步驟基于 Visual C++ 6.0。
這種現象是設計導致的。
使用 MFC 庫時,務必先鏈接它們,然后再鏈接 CRT 庫。這可以通過確保項目中的每個文件都首先包含 Msdev\Mfc\Include\Afx.h 來完成。
直接包含 ( #include <Afx.h> ) 或間接包含 (#include <Stdafx.h>) 都可以。Afx.h 包含文件會通過使用 #pragma comment (lib,"<libname>") 指令來強制采用庫的正確順序。
如果源文件的擴展名為 .c,或者該文件的擴展名為 .cpp 但不使用 MFC,則可以創建一個較小的頭文件 (Forcelib.h) 并將其放在模塊的頂端。這個新的頭文件可確保按照正確的順序搜索庫。
Visual C++ 不包含該頭文件。要創建此文件,請按照下列步驟操作:
int test(){new int; return 1;}
注意:本篇“快速發布”文章是從 Microsoft 支持組織直接創建的。 文中包含的信息按原樣提供,用于響應緊急問題。 由于發布倉促,材料可能包含印刷錯誤,并且可能隨時修訂,恕不另行通知。 有關其他注意事項,請參閱使用條款。
靜態庫才會發生。
solution
1. static lib
2.exe windows console client .
3 .setting MDLIB to lib directionary.
設置它本身依賴的dll
4. lib 目錄情況
5. main project setting include dir
6. mian link
ok 就可以了。 static lib pdb 就可以編譯進 main project 文件里了。
重建了項目!找這個問題花了我2個小時。
或者在編譯自己手工改
編譯要使用pdb寫入。連接需要使用pdb。 靜態庫最終將合并入exe文件所以pdb文件也需要一起用。
/VERBOSE 會把
MSDN 相關內容
鏈接
http://msdn.microsoft.com/zh-cn/library/t2fck18t(v=vs.80).aspx
LINK 還使用 PDB 保存 .exe 文件或 .dll 文件的調試信息。程序的 PDB 既是輸出文件也是輸入文件,因為 LINK 在重新生成程序時更新 PDB。
http://msdn.microsoft.com/zh-cn/library/6y6t9esh(v=vs.80).aspx
link 配置目錄。
CL 使用 CL 和 INCLUDE。
LINK 使用 LINK、LIB、PATH 和 TMP。
Quote of the Day:
Alcohol, if taken in sufficient quantities, produces all the effects of intoxication.
--Oscar Wilde
參考
pdb多 進程征用
http://www.cnblogs.com/joeylee/archive/2012/12/12/2815210.html
http://hi.baidu.com/vc_net/item/ffd829c4132d0862f6c95d48
http://www.cppblog.com/sunicdavy/archive/2011/08/09/152850.html
他的方法需要xcopy復制。解決4099方法。
http://www.cppblog.com/huyutian/archive/2012/10/06/192930.html
vc 編譯選項
http://hi.baidu.com/odzienkvkodvxze/item/88e75cd8f9a06edf251f408e
NL-00853: undefined command "ls". Try "help"
LSNRCTL> start
Starting /opt/app/oracle/product/10.2.0/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 10.2.0.1.0 - Production
System parameter file is /opt/app/oracle/product/10.2.0/network/admin/listener.ora
Log messages written to /opt/app/oracle/product/10.2.0/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date 01-DEC-2009 20:11:55
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /opt/app/oracle/product/10.2.0/network/admin/listener.ora
Listener Log File /opt/app/oracle/product/10.2.0/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
LSNRCTL>
LSNRCTL>
LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date 01-DEC-2009 20:11:55
Uptime 0 days 0 hr. 2 min. 38 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /opt/app/oracle/product/10.2.0/network/admin/listener.ora
Listener Log File /opt/app/oracle/product/10.2.0/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "idmp" has 1 instance(s).
Instance "idmp", status READY, has 1 handler(s) for this service...
Service "idmpXDB" has 1 instance(s).
Instance "idmp", status READY, has 1 handler(s) for this service...
Service "idmp_XPT" has 1 instance(s).
Instance "idmp", status READY, has 1 handler(s) for this service...
The command completed successfully
LSNRCTL>