2012-07-04 8 views
3

임베디드 Linux 설치 (DMP Vortex86DX 프로세서)에서 실행하려면 C++ 응용 프로그램을 작성해야합니다. 공급 업체는 보드에 설치할 수있는 적절한 하드웨어 드라이버를 포함하는 minimal linux installation image을 제공합니다. 제 질문은 particular kernel to run on a different kernel에 리눅스 소프트웨어를 작성하는 것에 관한 이전 질문에 대한 대답에 의해 동기 부여됩니다. 호환성을 보장하는 것과 관련하여 소프트웨어를 작성할 때 어디에서 시작해야 할지를 알지 못합니다.임베디드 리눅스 설치에서 실행할 C++ 응용 프로그램 개발

본능적 인 접근 방식은 임베디드 장치와 데스크탑 개발 컴퓨터에 동일한 버전의 g ++를 설치하는 것입니다. dev maching에 응용 프로그램을 작성하고 보드에 복사 한 다음 컴파일하십시오. 이것은 광기로 보입니다. 그리고 이것이 이것이 임베디드 소프트웨어가 개발되는 방법이라고 믿기 어렵습니다. 내 이전 질문에 대한 답변과 관련하여 단순히 바탕 화면에서 빌드 할 수 있지만 임베디드 장치에 존재하는 glibc 버전을 사용하는 방법이 있습니까? 그렇다면 특정 버전에 어떻게 연결될 수 있습니까? 또는 정적으로 모든 것을 빌드하여 응용 프로그램이 동적으로 어떤 것도 연결하지 못하게 할 수 있습니까? (가능하다고 생각합니다).

저는 임베디드 개발에있어 초보자입니다. 좋은 조언이나 자료를 얻지 못하면 몇 달의 좌절감을 느낄 수 있습니다. 어디에서 시작해야하는지에 대한 조언이나 제안은 그들이 얼마나 단순하고 사소한 것처럼 보이더라도 매우 감사하게 받아 들여질 것입니다. 나는 임베디드 물건과 관련하여 정말 맨 아래부터 시작하고 있습니다. 32 비트 코드를 확인하기 위해 -m32을 더 -march 스위치는 특정 CPU를 대상으로하지 :

+2

Ahm .... http://en.wikipedia.org/wiki/Cross_compiler –

+0

그리고 고객 지원을 인용하십시오 : '우리는 참고 용으로 자유 소프트웨어 지원 리소스를 제공합니다. 우리의 자원으로 인해 다른 웹 사이트로 연결될 수 있습니다. 귀하의 연구 시간을 절약하는 것이지 우리는 귀하의 신청서에 대한 추가 지원이나 질문에 답할 의무 나 책임이 없습니다. 특별한 도움이 필요하시면, 귀하의 계정 관리자에게 문의하십시오. " –

+0

@Bo 첫 번째 링크를 보내 주셔서 감사합니다 - 적어도 ellpisis 이후의 부분. – mathematician1975

답변

3

OK는 Vortex86SX/DX/MX 주장이 86 호환 할 수 있다는 사실 주어진, 컴파일러 스위치의 작은 세트가 대상 시스템에 대한 코드를 컴파일 할 수 있도록해야한다.

그런 다음 코드를 연결해야합니다. 당신이 멋지지만 단순한 glibc 기능을 사용하지 않는다면 ABI가 개발 머신과 임베디드 시스템에서 동일 할 것으로 기대합니다. 즉, 호스트 라이브러리에 대해 컴파일하고 임베디드 시스템에 바이너리를 복사하면 사용할 수있는 라이브러리를 사용하여 간단히 실행해야합니다.

X-Linux가 uclibc 또는 이와 비슷한 다른 libc를 사용하는 경우 호스트에 교차 컴파일러가 필요합니다. 그런 점에서 우분투에 대한 경험은 거의 없지만 Gentoo Linux 용 sys-devel/crossdev 패키지는 크로스 컴파일러 생성을 매우 쉽게 만들어줍니다. 이것은 다른 아키텍처 (귀하의 경우 필요하지 않음)와 다른 라이브러리 (예 : uclibc) 모두에 해당 될 수 있습니다.

나는 단순히 바이너리를 시도해보고 시도해보고 거기에 문제가 발생하면 다시보고한다.

+0

많은 것에 대해 감사드립니다. 자신의 정보 현재 버전 glibc 2.8.90 – mathematician1975

+0

이 Xlinux를 마침내 지금은 적어도 내가 도움이 시작 (그래서 내가 원했던 것입니다) 설치되어 얻을 수 있도록 도와 주셔서 대단히 감사합니다 – mathematician1975

관련 문제