error LNK2001 – プログラミング – Home

通知
すべてクリア

error LNK2001


佐藤
 佐藤
(@佐藤)
ゲスト
結合: 21年前
投稿: 19
Topic starter  

------ ビルド開始 : プロジェクト : AverageFaceMaker, 構成 : Debug Win32 ------

コンパイルしています...
AverageFaceMaker.cpp
リンクしています...
LINK : warning LNK4075: /EDITANDCONTINUE は /INCREMENTAL:NO の指定によって無視
されます。
libcpd.lib(locale0.obj) : error LNK2005: public: static unsigned int const
std::ctype<char>::table_size (?table_size@?$ctype@D@std@@2IB) は既に Wfm.obj
で定義されています。
LINK : warning LNK4098: defaultlib 'LIBCMTD' は他のライブラリの使用と競合してい
ます。/NODEFAULTLIB:library を使用してください。
Wfm.obj : error LNK2019: 未解決の外部シンボル struct std::_DebugHeapTag_t
const & __cdecl std::_DebugHeapTag_func(void) (?
_DebugHeapTag_func@std@@YAABU_DebugHeapTag_t@1@XZ) が関数 public: char *
__cdecl std::_DebugHeapAllocator<char>::allocate(unsigned int,void const *) (?
allocate@?$_DebugHeapAllocator@D@std@@QAAPADIPBX@Z) で参照されました。
Wfm.obj : error LNK2001: 外部シンボル "public: __thiscall
std::exception::exception(class std::exception const &) (??
0exception@std@@QAE@ABV01@@Z) は未解決です。
Wfm.obj : error LNK2019: 未解決の外部シンボル public: __thiscall
std::exception::exception(char const * const &) (??
0exception@std@@QAE@ABQBD@Z) が関数 public: __thiscall
std::bad_alloc::bad_alloc(char const *) (??0bad_alloc@std@@QAE@PBD@Z) で参照さ
れました。
Wfm.obj : error LNK2001: 外部シンボル "public: virtual char const *
__thiscall std::exception::what(void)const (?what@exception@std@@UBEPBDXZ)
は未解決です。
Wfm.obj : error LNK2019: 未解決の外部シンボル public: virtual __thiscall
std::exception::~exception(void) (??1exception@std@@UAE@XZ) が関数 public:
virtual __thiscall std::bad_alloc::~bad_alloc(void) (??
1bad_alloc@std@@UAE@XZ) で参照されました。
.\Debug/AverageFaceMaker.exe : fatal error LNK1120: 外部参照 5 が未解決です。

ビルドログは file://z:\.windows2000\平均顔制作ツール
\Average_face_maker\AverageFaceMaker\Debug\BuildLog.htm に保存されました。
AverageFaceMaker - エラー 7、警告 2

---------------------- 終了 ----------------------

ビルド : 0 正常終了、1 失敗、0 スキップ

このエラーがどうしても解決できません。何が悪いのでしょうか?


引用解決済
トピックタグ
tetrapod
 tetrapod
(@tetrapod)
ゲスト
結合: 21年前
投稿: 830
 

開発環境は何だい

LNK4098 が致命傷で、これを直すのが先。
コンパイルオプションがまちがっているか、ライブラリの指定が違うか。
他のエラーも多分例外処理関連のコンパイルオプションの誤りが原因。


返信引用
ん?
 ん?
(@ん?)
ゲスト
結合: 17年前
投稿: 25
 

error LNK2005 …これがまず先なのでは?


返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

VisualStudio系のエラーログと拝見できますが
開発環境の情報を 明示しない奴の回答など
できるわけがない!

親切でかつ暇な人は、リンクライブラリーから想像してくれるかも
しれないが
>発言される前に「使用上の注意」を必ずお読み下さい。
くらい読んでから質問しなおしてください

Wfm.objの中でexception(void)のような関数呼び出しをしてるらしいが
この関数を含むオブジェクトやライブラリーがリンク対象に
なっていないエラーが見受けられます

なお間違っているのは「コンパイルオプション」ではなく
「リンクオプション」です


返信引用
Ban
 Ban
(@ban)
Prominent Member
結合: 5年前
投稿: 776
 

先にLNK2005とか他の設定とか直しちゃってLNK4098だけ残ると、
実行ファイル自体はできちゃったりもするので、
その状態で仮に動くように見えても、たまたまだってことをちゃんとわかってるか
どうか見えないという意味で、危険ってことじゃないのかなぁと。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました