를 컴파일합니다. 필자는 필자가 모든 기능을 '손으로'호출하여 컴파일러보다 앞섰다고 생각했습니다.Aarch64 U-부팅 U-부팅 용으로 컴파일 할 때 현재 정말 이상한 버그가 발생하고 문제
static struct serial_device my_serial_drv = {
.name = "my_serial",
.start = my_serial_init,
.stop = NULL,
.setbrg = my_serial_setbrg,
.putc = my_serial_putc,
.puts = my_serial_puts,
.getc = my_serial_getc,
.tstc = my_serial_tstc,
};
물론, 내가 전화 할 때
'my_serial_drv'->start();
0으로 PC를 설정하고, 이후 모든 충돌 : 드라이버 구조체는 0/NULL 포인터를 얻는다 그러나이 버그는 훨씬 더 파급 효과가있다.
재미있는 사실은 .name이 바이너리에 도달했기 때문에 .data 섹션이 설정되면 좋습니다.
나는 이것을 aarch64-linux-gnu - * - 4.7과 aarch64-linux-gnu - * - 4.9 바이너리로 테스트했다. 에서 찾을 수 있습니다. http://releases.linaro.org/latest/components/toolchain/binaries.
는 어떤 도움을 크게 감상 할 수있다 :)
어떤 출시 u-boot? 그리고 denx에서 ELDK 컴파일러를 사용해 보셨습니까? http://www.denx.de/wiki/view/DULG/ELDKAvailability 다른 컴파일러와 컴파일 문제가있는 경우 항상 ELDK로 대체됩니다. –
ELDK는 arm64 (또는 aarch64)를 지원하지 않습니다. 내가 U-부팅 자식 클론에서 작업 시작, 마지막 공용 커밋 : c9aab0f9dd23fddcebf5984dc19e62b514e759a7를 월 4월에 21 21시 1분 35초 2014 0200 –
c9aab0f9dd23fddcebf5984dc19e62b514e759a7 전 연령대했다! 귀하의 문제는 툴체인과 관련이 있으며 u-boot와 관련이없는 것으로 보입니다. u-boot 메일 링 목록을 탐색 할 경우 동일한 문제를보고하는 사람이 없습니다. http://news.gmane.org/gmane.comp.boot-loaders.u-boot –