2011-07-30 2 views
1

내 프로그램이 컴파일되고 오류없이 링크됩니다. 그러나 프로그램을 실행하기 시작하면C++에서 실행되는 동안 "undefined symbol"

"undefined symbol: _ZN6Flexus11SharedTypes19FastBranchPredictor9combiningERKSsj" 

어떻게 가능합니까? 모호한 것이 있으면 프로그램을 연결해서는 안됩니다.

는 DeMangeled :

Flexus::SharedTypes::FastBranchPredictor::combining(std::string const&, unsigned int) 
+1

이 VC++ 또는 g ++는 라이브러리가 정적으로 링크되거나 동적으로 링크됩니까? – arunkumar

+0

g ++를 사용 중입니다. – mahmood

+0

g ++에만이 문제가 있습니다. VC++ doesnt. – Ajay

답변

2

나는 당신이 그것을에서 호출하려는 함수를 포함하지 않는 동적 라이브러리에 연결하는 것 같아요. 컴파일러 및/또는 링커가 라이브러리 런타임에 연결했기 때문에 오류를 감지 할 수 없습니다.

+1

팁 주셔서 감사합니다. 나는 내가 만든 파일을 제작 과정에 포함시키지 않았다는 것을 알았다. 다른 말로, a.cpp에서, 나는 무엇인가를 정의했고 b.cpp에서는 그것을 사용했습니다. 그러나 나는 'a'를 만드는 과정에 포함시키는 것을 잊었다. 프로세스 'b'만 만듭니다. – mahmood

관련 문제