저는 clang을 ARM 용 크로스 컴파일러 (./configure --target=armv7l-unknown-linux-gnueabihf
으로 구성)로 사용하도록 컴파일했습니다. 그러나 C 코드를 컴파일하려고 시도하면 /usr/bin/as
을 사용하려고 시도합니다. 이미 ARM 용으로 컴파일 된 binutils를 가지고 있으며, 이들은 별도의 디렉토리에 있습니다. 내가 지정한 어셈블러를 사용하도록 clang (또는 llvm)에 지시하려면 어떻게해야합니까?clang 용 사용자 정의 어셈블러는 어떻게 사용합니까?
답변
필자는 항상 ./configure를 사용하여 원본 디렉토리에서 구성하는 데 어려움을 겪었으며 결국 포기했습니다. 요즘은 항상 별도의 디렉토리 즉, .. 구성으로 구성합니다. 구성을 위해 절대 경로를 사용하는 것이 좋다고 들었습니다.
ARM binutils는 clang에 사용하는 것과 동일한 접두사에 설치하고 & build clang (예 : PATH =/some/prefix/bin : $ PATH)을 구성 할 때 경로에 있는지 확인해야합니다./configure --target = armv7l-unknown-linux-gnueabihf. 패키징 목적으로 별도의 디렉토리에 보관하는 경우 DESTDIR = install을 설치하십시오.
나는 일반적으로 연타를 구축하지 않습니다하지만 난 devkitARM에 사용하는 buildscripts 도움이 될 수있다 - http://sourceforge.net/p/devkitpro/buildscripts/ci/c372699fc7b4de90eb044314ce5bed04db640291/tree/
죄송 합니다만 이전에 소스 디렉토리와 동일한 디렉토리에 clang을 구성 해 본 적이 없습니다. 필자가 질문에 포함시킨 명령은 간결성을 위해'--prefix' 플래그를 생략했습니다. CarlNorum의 주석에서 알 수 있듯이, 나는'--prefix' 플래그를 포함 시켰음을 알았지 만 여전히 저에게는 효과가 없었습니다. 이상한 것은 컴파일 과정이 실제로 bin이라는 (정확한 타겟 트리플과 함께) 폴더에 통합 된 어셈블러 바이너리를 생성하는 것처럼 보이지만 결코 사용하지 않는다는 것입니다. 나는 당신이 답안에 포함 시켰던 빌드 스크립트를 자세히 살펴볼 것입니다. – JosephH
모든 CC 아칸소 등 유틸리티 armv7l-와 접두사의 원인이되는 구성 --host 옵션을 전달 시도 알 - 리눅스 - gnueabihf- 예 : 나는이 최근 않았다 알고 automake Cross compiling
나는 당신이 그 질문을 잘못 이해했다고 생각합니다. @JosephH는 clang을 사용하여 프로그램을 교차 컴파일하는 방법을 묻습니다.하지만 "clang 자체를 컴파일하는 방법"에 대한 답변이 필요합니다. –
- 1. 어셈블러는 어떻게 쓰여지고 쓰여지는가?
- 2. 어셈블러는 상수 인 .data를 어디에 저장합니까? 어떻게 사용합니까?
- 3. 어셈블러는
- 4. PowerShell의 사용자 정의 클래스에서 사용자 정의 구조체는 어떻게 사용합니까?
- 5. django.po에서 사용자 정의 Plural-Forms을 어떻게 사용합니까?
- 6. Spine.js에서 사용자 정의 js 라이브러리는 어떻게 사용합니까?
- 7. 사용자 정의 ASP.NET 컨트롤에서 ScriptManagerProxy를 어떻게 사용합니까?
- 8. Matlab에서 사용자 정의 Java 클래스는 어떻게 사용합니까?
- 9. fuseki에서 사용자 정의 함수는 어떻게 사용합니까?
- 10. 하이퍼 링크에서 사용자 정의 필드는 어떻게 사용합니까?
- 11. 사용자 정의 된 노드 모듈은 어떻게 사용합니까?
- 12. Clang 3.1 및 사용자 정의 리터럴
- 13. 사용자 정의 함수에서 data.frame을 사용합니까?
- 14. 누구나 C/objective-C 용 clang 정적 분석기를 사용합니까? 좋은가요?
- 15. 다른 사용자 컨트롤에서 asp.net 사용자 정의 컨트롤을 어떻게 사용합니까?
- 16. app.config에서 사용자 설정 및 사용자 정의 구성 섹션을 어떻게 사용합니까?
- 17. 누구나 사용자 정의 ViewMasterPage를 사용합니까?
- 18. Android 용 tablayout은 어떻게 사용합니까?
- 19. 어떻게 리눅스 용 디버거를 사용합니까
- 20. codeigniter에서 사용자 라이브러리의 사용자 정의 라이브러리를 사용합니까?
- 21. 어셈블러는 "org 100h"지시어를 어떻게 처리합니까?
- 22. AngularJS는 사용자 정의 HTML5 요소 태그 및 속성을 어떻게 사용합니까?
- 23. 한 사용자 정의 함수의 로컬 변수를 다른 함수에 어떻게 사용합니까?
- 24. 사용자 정의 모듈에서 제품 복제 관측 이벤트를 어떻게 사용합니까?
- 25. VBA에 정의 된 사용자 지정 함수에서 Excel 함수를 어떻게 사용합니까?
- 26. 사용자 정의 컨트롤에 중첩 네임 스페이스를 어떻게 사용합니까?
- 27. React-native android에서 어떻게 사용자 정의 글꼴을 사용합니까?
- 28. jquery .live()에서 사용자 정의 함수를 어떻게 사용합니까?
- 29. Html.EditorFor() 및 기타 사용자 정의 Html 도우미 내부에서 어떻게 사용합니까?
- 30. ASP.NET MVC 2 : 사용자 정의 모델에 Html.EditorFor를 어떻게 사용합니까?
: 당신이 희망으로 구성 사용하고 있기 때문에
는 살펴 autotools를 안녕하세요 - 주위에 파일을 구성했는지 보겠습니다. ARM을 위해 어쨌든 어셈블러를 실행하는 대신 기계 코드 생성기를 사용해서는 안됩니까? '--integrated-as'를 지나치셨습니까? '-v'를 사용하여 예제 명령 행과 출력을 보여줄 수 있습니까? –
필자의 configure 라인은 많은 도움이되지 않지만'../llvm/configure --target = mipsel-sde-elf --prefix =/some/prefix --enable-optimized'입니다. 이것은 잘 작동하고'/ some/prefix/mipsel-sde-elf-as'를 실행했습니다. 즉, 일반적으로 통합 어셈블러를 사용하므로 잠시 테스트하지 않았습니다. –
@CarlNorum 또한 clang과 같은 폴더에 통합 어셈블러 (armv7l-unknown-linux-gnueabihf-llvm-as')가 있지만 여전히/usr/bin/as를 사용하고 있습니다. 나는'armv7l-unknown-linux-gnueabihf-llvm-as'가 내부적으로'/ usr/bin/as'를 호출하는지 확신하지 못합니다. – JosephH