2012-04-26 2 views
0

내 프로그램이 시작되기 전에 내 프로그램에없는 함수 호출을 참조하는 초기화되지 않은 값 메시지가 나타납니다. 나는 왜 내가이 메시지를 받는지 혼란스럽고 어떻게 정리할 수 있는지 혼란 스럽다.valgrind 이상한 조건부 점프 메시지가 프로그램 시작 전에

==24266== Conditional jump or move depends on uninitialised value(s) 
==24266== at 0x809098A: __linkin_atfork (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x80919EB: _dl_non_dynamic_init (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x80921B1: __libc_init_first (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x805F60B: (below main) (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== Uninitialised value was created 
==24266== at 0x8091662: _dl_sysinfo_int80 (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x80BE31F: brk (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x808DE99: sbrk (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x805F96B: __libc_setup_tls (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x805FB66: __pthread_initialize_minimal (in /home/mbarry/workspace/datapup/src/plugin) 
==24266== by 0x805F5A3: (below main) (in /home/mbarry/workspace/datapup/src/plugin) 
+0

대부분 프로그램의 실행을 시작하기 전에 작성되는 전역 객체를 통과 한 것일 수 있습니다. 라이브러리 유형의 전역 객체를 만들었습니까? –

+0

http://www.digipedia.pl/usenet/thread/12146/5877/ – md5

+0

pthread.h를 제거했고 pthread에 대한 모든 참조가 나왔지만 여전히 동일한 메시지가 표시됩니다. 글로벌 변수가 많습니다. –

답변

1

메모리 문제를 일으키는 gcc 메이크 파일에 -D_THREAD_SAFE -D_REENTRANT -static 플래그를 잘못 사용했습니다.

관련 문제