2016-05-31 4 views
2

나는 툴체인에 자신의 라이브러리를 포함시키는 법을 보여주는 예제를 찾고있다.Yocto에 의해 생성 된 embeded Linux 용 toolchain (SDK)에 libary를 포함시키는 방법은 무엇입니까?

라이브러리 "myLib"을 호출 해 보겠습니다. 그것을 위해 내가 조리법 "myLib.bb"을 만들고 추가 :

BBCLASSEXTEND = "native nativesdk" 

을 내 "local.conf"나는 추가 :

IMAGE_INSTALL_append = " myLib" 

하여 SDK를 구축 :

$ bitbake myTarget -c populate_sdk 

SDK 및 두 개의 매니페스트 파일에 대한 설치 관리자를 생성합니다. "myLib"은 대상 매니페스트에만 포함되고 호스트에는 포함되지 않습니다. myLib을 호스트 시스템에 어떻게 포함시킬 수 있습니까?


다른 사람이 Yocto 시스템없이 시스템에 소프트웨어를 만들 수 있다는 생각입니다. 툴체인을 사용해서 만이 바이너리를 생성 할 수 있으며,이 바이너리는 evalboard에서 전송되고 실행될 수 있습니다.

답변

4

라이브러리에 myLib이 설치되어있는 한 이미지는 생성 된 SDK의 일부로 간주됩니다. 적어도 그것이 목표물 목록의 일부라고 말하면됩니다.

라이브러리에 필요한 헤더 파일을 설치했는지 확인한 다음 라이브러리에 대해 크로스 컴파일 할 수 있어야합니다.

개발자 빌드 컴퓨터에서 myLib을 사용해야합니까? 그렇지 않은 경우 왜 nativeskd 부분에 추가할까요? (즉, 호스트 매니페스트). 이는 호스트 컴퓨터, 즉 교차 컴파일러, 코드 생성기 등에서 실행해야하는 응용 프로그램을위한 것입니다.

+0

"nativeskd"에 추가하고 싶습니다. sdk를 사용하는 개발자는 라이브러리에 연결할 수 있어야합니다. 아이디어는 목표 시스템의 모든 libs를 포함하는 sdk를 갖는 것입니다. –

+2

음, 그러면 원어민 버전을 전혀 추가 할 필요가 없습니다. nativesdk 버전은 문제의 개발자에게만 필요합니다. 자신의 데스크톱과 라이브러리에 대해 로컬로 빌드해야합니다. 타겟 버전은 크로스 컴파일에 필요한 버전입니다. – Anders

관련 문제