2014-11-05 7 views
2

나는 현재 tmote 하늘 플랫폼 컨티키에서 다음 명령을 사용하여 프로그램을 컴파일하려고 :컨티키, MSP430 : 귀하의 오류에 맞게 잘립니다 재배치

1) "= sky-shell-exec.sky TARGET을 하늘 "

2)"나는 얻을 "

을 sky-shell-exec.sky CORE = sky-shell-exec.sky TARGET = 하늘을 그 첫 번째 명령의 작동하지만 그 다음에 두 번째 오류 아웃 :

"contiki-sky.a (symbols.o) :(. rodata + 0x1f00) : 맞게 재배치 된 재배치 : sky_shell-exec.sky의 ABS 섹션에 정의 된 '_efartext'기호에 대한 R_MSP430_16_BYTE

contiki-sky.a (symbols.o) :(. rodata + 0x1f1c) : 잘림에 맞게 잘림 : R_MSP430_16_BYTE 기호 ' _vectors_end '(sky-shell-exec.sky의 .vectors 섹션에 정의 됨)

내 msp430-gcc 버전은 4.7.0 20120322 (mspgcc dev 20120716)입니다.

나는 주위를 둘러 보았지만이 오류는 어디서나 발견하지 못했습니다.

이것은 내 기호 테이블의 공간이 부족하다는 것을 의미하며 코드를 압축해야한다고 가정합니다. 나는이 일을 시도하고 더 이상 코드 기반을 줄일 수없는 시점에 있습니다. 나는 이것을 생각하는 것이 맞습니까?

누구나 이것이 무엇을 의미하고 가능하면 해결할 수 있는지 알고 있습니까?

감사합니다.

+0

이 수정 사항에서와 같이 Makefile.msp430의 132 행에서 -g 옵션을 제거하려고 시도했습니다. http://sourceforge.net/p/contiki/mailman/contiki-developers/thread/[email protected] .gbl/ 그러나 이것은 도움이되지 못했습니다. –

답변

1

내 오류는 내가 생각했던 것보다 더 명확하게 나타났습니다. 나는 contiki 2.6의 수정 된 버전을 msp430-gcc 4.7.0과 함께 사용하고있었습니다. 나는 인스턴트 contiki 2.7이있는 VM을 가지고 있었고 동일한 VM에서 작업 할 때 수정 된 contiki 2.6을 분기했습니다. msp430-gcc 4.7.0은 contiki 2.7에서 잘 작동하지만 contiki 2.6의 제 분기에서 작업 할 때 모든 것이 망가졌습니다. 최선의 추측에 대한 문제는 두 코드베이스 간의 Makefile.include의 차이로 인해 발생했습니다. contiki 2.6이 msp430-gcc 4.7.0을 염두에두고 만들어지지 않았다고 가정합니다. 그래서 2.6에서 작업하기 위해 현재 msp430-gcc 4.5.3으로 전환하고 있으며 contiki 2.6에서 완전히 별개의 VM을 만들고 있습니다.이 시스템은 지금까지 작동하고있는 것처럼 보이지만 ... sky-shell-exec 예제의 몇 가지 문제가 있습니다. 그래서 아마 대신 msp430-gcc 4.6.3을 사용하게 될 것입니다.

+0

또한 msp430-gcc 4.6.x를 사용하고있었습니다. contiki 2.6에서 동일한 컴파일 오류가 발생했습니다. 그러나 그것의 컴파일 contiki 2.7 성공적으로. – rashok

0

이 플랫폼을 다루지는 않았지만 먼저 디버그 구성없이 빌드하십시오. 다음으로 링커 파일을 확인할 수 있습니다.

+0

무슨 뜻인지 좀 더 설명해 주시겠습니까? 디버깅에 의해 당신은 너무 CFLAGSNO에서 -g 옵션 삭제 의미하는 경우 : CFLAGSNO = -Wall -mmcu = $ (CC_MCU) -g $ (CFLAGSWERROR) 가된다 : CFLAGSNO = -Wall -mmcu = $를 (CC_MCU) $ (CFLAGSWERROR) 내 Makefile.msp430 파일에, 그럼 당신이 말하는 것을 시도했다고 생각합니다. 여기에 설명되어 있습니다 : http://sourceforge.net/p/contiki/mailman/contiki-developers/thread/[email protected]/. –

+0

또한 링커 파일을 검사하는 방법과 검사 할 때 무엇을 찾고 싶습니까? –

+0

https : // github.Contoso-OS/펌웨어 크기 – arapEST