HP-UX
1752653 회원
5759 온라인
108788 솔루션
새 메시지

gcc-4.1.0-hppa-11.11.depot에는 libgcc가 포함되어 있지 않나요?

 
장준학
비정기 기여자

gcc-4.1.0-hppa-11.11.depot에는 libgcc가 포함되어 있지 않나요?

아래 문제를 조금 더 살펴 보니



제가 만든 application이 실행시에 __gxx_personality_v0 symbol을 찾는데 반해 실제 libstdc++.sl을 보니 __gxx_personality_sj0 symbol이 있습니다.



이상해서 swlist (HP)를 이용하여 설치 내역을 보니 gcc-4.1.0-hppa-11.11.depot 및 libgcc-4.1.0-hppa-11.11이 설치되어 있더군요.



gcc에 libgcc가 기본적으로 포함되어 있지 않나요? 그리고 포함되어 있다면 libgcc를 별도로 설치할 경우 문제가 될 수 있을까요?



그리고 위와 같이 compile할 때 참조하도록 된 symbol이 실제 실행 시와 다른 경우가 생길 수 있는지요?



분명히 동일한 build하고 실행한 것인데요.



많은 조언 부탁 드립니다.

------------------------------------------------------------------

Shared library를 만들고 test application을 만들어서 호출하는 예제를 만들었는데 __gxx_personality를 찾지 못하는 문제가 발생합니다.



GCC는 4.1.0입니다. 다른 machine에는 3.4.2를 사용하고 있는데 여기서는 문제가 없습니다.



원인이 뭔지 모르겠습니다. 특정 library가 누락된 것인지.... 아시는 분 부탁 드립니다.



P.S: 이 함수는 실제로 code 내에서 사용하지는 않습니다. 아무래도 어디선가 내부에서 호출하는 듯 합니다.
2 응답 2
이태곤
중학생

gcc-4.1.0-hppa-11.11.depot에는 libgcc가 포함되어 있지 않나요?

안녕하십니까



프로그래머가 아니라 뭐라 답변하기는 어렵지만 다음을 참고하십시오



1. Run-time dependencies: gettext libiconv

gettext, libiconv 을 설치하십시오



2. google 이나 naver에 검색하면

"Makefile 에 -lstdc++를 추가하세요" 라는 부분이 있네요



3. 그리고 소스에 C++ 프로그램이 포함되어 있는 경우 발생할수 있다고 합니다 (이경우 옵션을 추가해야 한다고..google에서)



이상 허접이었습니다.
장준학
비정기 기여자

gcc-4.1.0-hppa-11.11.depot에는 libgcc가 포함되어 있지 않나요?

제가 질문하고 제가 답변하는 군요.



결론적으로 문제를 해결하였습니다. 문제의 원인은 g++와 libstdc++.sl의 version이 일치하지 않아서였습니다.



GCC를 재 설치하는 위험 (기존 service에 대한 영향)을 피하기 위해 일치하는 version의 libstdc++.sl을 /usr/local/lib에 복사하여 해결하였습니다.



Version 불일치의 원인에 대해서는 아직도 알 수 없습니다. 제가 설치했던 것이 아니라서...