void
set_gdbarch_from_file (bfd *abfd)
{
struct gdbarch_info info;
struct gdbarch *gdbarch;
gdbarch_info_init (&info);
info.abfd = abfd;
info.target_desc = target_current_description();
gdbarch = gdbarch_find_by_info (info);
if (gdbarch == NULL)
error (_("Architecture of file not recognized."));
deprecated_current_gdbarch_select_hack (gdbarch);
}
이것은 실제 문제의 gdb 코드입니다 (gdb/arch-utils.c : 530-544).
gdbarch 포인터에 전달 된 정보가 유효하지 않은 것으로 보입니다. 이것은 gdb_find_by_info가 NULL 포인터를 반환하고 find_arch_by_info (gdb/gdbarch.c : 3656)가 NULL 포인터를 반환하기 때문에 발생합니다.
기본적으로 GDB는 파일의 아키텍처를 식별하지 못했습니다. 이것은 최근 gdb 버전에서도 xlc에 대해 common 문제입니다.
XLC와 gdb는 호환성을 고려할 때 매우 좋지는 않지만 (AIX 지원은 미미함) Gnu C Compiler을 사용해 볼 수 있습니다. VERY에 대한 GDB 소스를 살펴보십시오. 특정 정보 (실제로 제공 할 수는 없습니다).
Here은 gcc-AIX 사양에 대한 링크입니다.
정확한 질문이 아닙니다 ... 아마도 조금 더 자세히 설명해 드릴 수 있습니다 .... –