우분투 16.04에 LLVM 6을 구축하고 있습니다. lld
도 필요합니다. 하지만 내가 무엇을 하든지간에 lld
은 빌드/설치하지 않습니다.LLVM 6 트렁크 우분투 빌드 16.04 빌드하지 않음
here에서 다음 지시 사항을 따르십시오. 는 아직도 문서를 읽으 제 1 및 제 2 :
을 통해 선별.
설명서를 읽으십시오.
문서를 읽는 것에 대해 두 번 경고했음을 기억하십시오.
특히 지정된 상대 경로가 중요합니다.
체크 아웃 LLVM :
cd where-you-want-llvm-to-live svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
체크 아웃 연타 :
cd where-you-want-llvm-to-live cd llvm/tools svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
체크 아웃 추가 연타 도구 [선택] :
cd where-you-want-llvm-to-live cd llvm/tools/clang/tools svn co http://llvm.org/svn/llvm-project/clang-tools-extra/trunk extra
체크 아웃 LLD 링커 [선택] :
cd where-you-want-llvm-to-live cd llvm/tools svn co http://llvm.org/svn/llvm-project/lld/trunk lld
다른 옵션 패키지를 다운로드하지 않았습니다. svn
다운로드가 제대로 작동하지 않아 (svn: E000104: Error running context: Connection reset by peer
), 자신의 github 미러에서 LLVM, Clang, clang-extra 및 lld에 대해 각각 zip
을 다운로드했습니다. 이후, 나는 svn
을 사용하지 않았다. 예를 들어, clang-tools-extra-master
에서 extra
으로 폴더의 이름을 변경해야했다.
그런
$ mkdir build; cd build
$ cmake ../llvm
$ make
8시간 대기 후, llvm
소스 폴더의 상위 폴더로 보내고 cd
후, 다음을 실행, 내가 얻을 모든 프로그램 (clang
, lli
, llc
등) lld
제외. 폴더 build/bin
에 나타날 것으로 예상됩니다.
나는 또한 cmake -DLLVM_ENABLE_PROJECTS=llvm/tools/lld ../llvm
옵션을 시도했습니다. (-DLLVM_ENABLE_PROJECTS=lld
양식이 작동하지 않아 동일한 활성화 문제에 대해 장소에서 논의한 곳이 있습니다.)
나는 이미 세 번 조정 해 보았습니다. 컴파일에 너무 많은 시간이 걸리므로, 나는 당신의 도움을 받기로 결정했습니다.
별도의 문제 : 건물에서 링크 단계는 노트북에 12GB RAM + 8.8GB 스왑 공간이 필요합니다. LLVM 빌딩에 실제로 20GB 이상의 RAM이 필요합니까? (나는 다른 모든 전경 앱을 닫았습니다. 특히 firefox
)
더 많은 정보가 필요하면 알려주십시오.
링크 단계의 RAM 사용 관련 : 디버그 정보 및 정적 연결 때문입니다. 문제를 완화하기위한 여러 가지 방법에 대한 답변을 참조하십시오. https://stackoverflow.com/a/44808601 – PaulR
@ Paul 링크에 대한 감사 . 내가 다음에 만들 때마다 시도해 볼거야. 나는'make -j 2'를 사용했음을 언급하는 것을 잊었 기 때문에 병렬 링크는 링크가 나타내는 다른 범인이 될 수 있습니다. – codeman48
이제 생각해 보니, 게시물에 언급 된 LLVM_PARALLEL_LINK_JOBS은 닌자와 만 작동 할 것입니다. 하지만 닌자는 그렇지 않으면 잘 작동하므로 시도해볼 수 있습니다. – PaulR