2017-11-05 4 views
0

내 Mac에서 installed Bazel via brew을 사용하는 경우 Linux 컨테이너에서 실행되는 라이브러리를 빌드하기 위해 Linux 크로스 탭을 어떻게 설치할 수 있습니까?양조를 통해 Bazel 용 리눅스 크로스 컴파일러를 어떻게 설치합니까?

배경 :

내가 로컬 내 Mac에서 bazel/rules_docker 테스트 실패를 진단하기 위해 노력하고있어,하지만 난 깨끗한 입대 실패 (https://github.com/bazelbuild/rules_docker/issues/217) 것을 찾을 수 있습니다. 내 직감은 내가 명시 적으로 리눅스 crosstool 일부 구성 요소를 구축 할 필요가있다, 그러나 bazel는

Valid toolchains are: [ 
    --cpu='darwin_x86_64' --compiler='compiler' --glibc='macosx', 
    --cpu='ios_x86_64' --compiler='compiler' --glibc='ios', 
    --cpu='watchos_i386' --compiler='compiler' --glibc='watchos', 
    --cpu='tvos_x86_64' --compiler='compiler' --glibc='tvos', 
    --cpu='ios_i386' --compiler='compiler' --glibc='ios', 
    --cpu='ios_armv7' --compiler='compiler' --glibc='ios', 
    --cpu='watchos_armv7k' --compiler='compiler' --glibc='watchos', 
    --cpu='tvos_arm64' --compiler='compiler' --glibc='tvos', 
    --cpu='ios_arm64' --compiler='compiler' --glibc='ios', 
    --cpu='armeabi-v7a' --compiler='compiler' --glibc='armeabi-v7a', 
]. 

가 설치 어느 쪽이든 및/또는 참조 다른 툴체인 있습니까라고?

답변

0

Bazel은 Skylark 저장소 here을 사용하여 로컬 구성을 자동으로 감지합니다. 로컬 환경을 대상으로하는 툴체인을 탐지하는 데만 사용됩니다. Mac에서 Linux를 타겟팅해야하는 경우 사용자 정의 도구 체인 (CROSSTOOL 및 관련 항목)을 제공해야합니다. 하나의 옵션은 리눅스 컴퓨터에서 bazel을 실행하고 생성 된 toolchain을 output_base에서 검색하고, CROSSTOOL이있는 폴더를 Mac 컴퓨터로 복사 한 다음 --crosstool_top을 사용하여 자동 생성 된 CROSSTOOL 대신 CROSSTOOL을 사용하는 것입니다. 그것은 의미가 있습니까?