우분투에서 gcc-multilib는 정확히 무엇을 의미합니까?


11

오래된 우분투 (v.12)와 오랜 시간을 보낸 후 v.16으로 업데이트하고 "gcc-multilib"에 대한 언급과 혼동됩니다.

이것이 실제로 애플의 "지방 바이너리"또는 " 범용 바이너리 "모델이 리눅스로 포팅되어 있습니까?

즉, 우분투의 네이티브 C 라이브러리가 다양한 아키텍처의 여러 바이너리를 포장하는 컨테이너가 되었습니까?

그렇다면 더 이상 x64 시스템에 32 비트 런타임 라이브러리를 특별히 설치할 필요가 없습니까? gcc 또는 g ++ 라이브러리의 "기본"패키지에는 32 비트 앱을 실행하고 빌드하는 데 필요한 모든 것이 포함되어 있습니까?

답변:


13

gcc-multilib크로스 컴파일 , 즉 다른 프로세서 아키텍처에서 실행되도록 프로그램을 컴파일하는 데 유용합니다 . 예를 들어 gcc-multilib64 비트 Ubuntu에서 실행 중이고 32 비트 Ubuntu에서 실행되도록 프로그램을 컴파일하려는 경우 (또는 ARM 등에서 아이디어를 얻을 수 있음) 필요합니다.


1
그렇다면 런타임 라이브러리와 관련이 없습니까? x64에서 32 비트 프로그램을 실행하려면 여전히 후프를 통해 "libc-i386", "g ++-i386"등을 32 비트 라이브러리에 설치해야합니까? 그리고 "dpkg --add-architecture i386"은 multilib와 관련이 있습니까?
ddbug

예. 평소 농구대. dpkg --add-architecture단순히 dpkg외부 아키텍처 용 패키지를 설치하길 원한다고 말하고 불평과 요청을 중단해야합니다 --force-architecture.
AlexP

AlexP 감사합니다. 이 multilib 설정이 Ubuntu 16의 새로운 기능입니까, 아니면 이전 버전, 예를 들어 v.14 또는 12입니까?
ddbug

적어도 12.04.
AlexP
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.