저는 임베디드 시스템에 멍청한 사람입니다. 필자는 ARM9를 사용하는 TS-7390 키트를 사용하고 있습니다. 응용 프로그램을 컴파일 할 수있었습니다. 내 질문은 공유 라이브러리를 사용하여 컴파일하는 방법입니다. 호스트에 도서관이 있어야하나요?공유 라이브러리를 사용한 크로스 컴파일
1
A
답변
3
공유 라이브러리의 사용 방법에 따라 다릅니다. 공유 라이브러리가 항상 링크되어있는 것처럼 응용 프로그램을 라이브러리와 함께 컴파일하는 경우 호스트에 필요합니다. 공유 라이브러리가 dlopen
을 통해 동적으로로드되는 경우 호스트에 공유 라이브러리가 필요하지 않습니다. 두 경우 모두 대상에 해당 라이브러리가 필요합니다.
1
또한 응용 프로그램을 크로스 컴파일하기 전에 공유 라이브러리를 교차 컴파일해야합니다.
2
간략한 설명 : 예.
이유를 설명해 드리겠습니다. 크로스 컴파일 링 환경을 설정할 때 컴파일러를 링크 할 때 모든 심볼이 해석되는지 검사하기 때문에 헤더 파일과 라이브러리를 모두 사용할 수 있어야합니다.
당신이 상상할 수있는 것처럼, 프로그램이 libc만을 사용하지 않는 순간 크로스 컴파일러로는 충분하지 않습니다. 이 경우 모든 필요한 파일 (헤더, 라이브러리 등)이있는 장소가 필요합니다. 모든 종속성을 다루는 데는 시간이 많이 걸릴 수 있으므로, 종종 어떤 종류의 도구 나 배포판을 사용하는 것이 바람직합니다.
예를 들어, 나는 배울 시간이 조금 걸리는 OpenEmbedded을 사용하지만, 라이브러리를 다루어야 할 때 많은 도움을 줄 수 있습니다.
관련 문제
- 1. Windows에서 크로스 컴파일?
- 2. GNU/Libtool 크로스 컴파일
- 3. 정적으로 공유 라이브러리 컴파일
- 4. 크로스 컴파일 문제 icu
- 5. 크로스 컴파일 된 라이브러리를 사용하는 데 문제가 있습니다.
- 6. Windows에서의 Linux 용 크로스 컴파일
- 7. 인텔에서 암으로 라이브러리 크로스 컴파일
- 8. Voce 라이브러리를 사용한 음성 합성
- 9. tslib : 테스트 스크립트 크로스 컴파일
- 10. 크로스 컴파일 오류
- 11. RaspBerry 파이를위한 크로스 컴파일
- 12. 크로스 컴파일 매크로 이름
- 13. Cmake 크로스 컴파일 플래그
- 14. mingw로 크로스 컴파일
- 15. SBCL로 크로스 컴파일
- 16. cmake 크로스 컴파일
- 17. QTcreator 크로스 컴파일
- 18. Microblaze 크로스 컴파일
- 19. qt 크로스 컴파일
- 20. Android 및 크로스 컴파일
- 21. Qt 크로스 컴파일
- 22. Oracle 원시 컴파일 링 공유 라이브러리를 재사용 할 수 있습니까?
- 23. x86에서 MIPS 라우터를위한 크로스 컴파일
- 24. 크로스 컴파일 대 가상 머신
- 25. AIX에서 공유 라이브러리를 대체합니다.
- 26. 공유 라이브러리를 포함한 오류
- 27. 공유 라이브러리를 사용할 때의 문제
- 28. 리눅스 크로스 컴파일 및 동적 라이브러리/링크
- 29. iframe을 사용한 크로스 사이트 스크립팅
- 30. GLKit을 사용한 크로스 플랫폼 개발?