binutil 에 있는 nm 으로 나타나는 목록에서 r 은 무엇인가요?

freezm7의 이미지

링크에 문제(undefined reference)가 있어서,
nm 으로 문제가 되고 있는 .o 파일을 살펴보니

원래는 symbol type 이 R 로 나왔는데 갑자기 r 로 나옵니다.

man nm 으로 찾아보니,
R 은 read only data section 이라고 나오는데 r 에 대해서는 설명이 없네요. 구글도 검색해 봤는데 찾지를 못했습니다.

혹시 아시는 분 계시면 알려주세요.

컴파일러는 armv4tb-softfloat-linux-gnu-g++ (GCC) 3.4.0 (ARM 용 g++) 입니다.

freezm7의 이미지

자문자답이 될지도 모르겠군요.
정확한 문서를 발견한 것은 아닌데요, 몇가지 실험을 해본 결과
static 변수는 r 로 표시 되는 것 같네요.

제 생각이 맞나요?

즐겁게 살아 볼까나~*

kewlbear의 이미지

혹시 C++ name-mangling 문제 아닌가요?

khiny의 이미지

Quote:
The symbol type. At least the following types are used; others are, as well, depending on the object file format. If lowercase, the symbol is local; if uppercase, the symbol is global (external).

란 말이 있네요.
자답하신대로 소문자일 경우는 local, 대문자일 경우는 global(external)입니다.