|
▼のえるさん:
> ベクターの支払いもついに開始されましたね。
> さっそくレジストさせていただきました(^^)
どうもありがとうございます。(ペコリ)
> 今、Visual Studio .NET 2003 を使ってEntisGLS3を利用させていただいていますが、
> C++のランタイムライブラリが libcpmt.lib など p 付きに変更された影響か、
> #include <iostream> や new などC++特有の機能を呼び出す前に linkgls.h を
> includeしておかないとリンク順が逆になるようで new でリンクエラーに
> なってしまう症状が出て悩みました。本当のところはよくわかりませんが……。
>
> gls.lib(eslheap.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) は既に libcpmt.lib(newop.obj) で定義されています。
確かに、よくよく考えてみれば、このようなことはありえなくはありませんね…
手元では VC++5 で試してますから…(汗)
一応 VC++6 の環境もあるのですが、こちらは報告によれば大丈夫だったかな…、一度確認しておかないと…
すいませんが、以下の点について確認させていただいてもよろしいでしょうか?
・リンクエラーが発生したのは、MFC プロジェクトですか、それとも非 MFC プロジェクトですか?(stdafx.h ってことは MFC?)
・ヘッダの先頭と、終わり(linkgls.h を書いていいところとまずいところそれぞれ)の位置に以下のようなコードを挿入して、実際に _MFC_VER マクロが定義されているかどうかを確認してみてください。
#if !defined(_MFC_VER)
#error 又は #defined _MFC_VER 0x0421 で結果が変わるか?
#endif
#include <linkgls.h>
|
|