Size: a a a

Ассемблер

2021 June 12

X

XÆA-XII in Ассемблер
Ну вот свой код на расте или хаскеле я держу в максимальной красоте, какую только могу сделать
источник

X

XÆA-XII in Ассемблер
И из-за этого не могу ничего довести до конца
источник

X

XÆA-XII in Ассемблер
А как ld заставить компоновать в нужном мне порядке?
источник

d

disba1ancer in Ассемблер
передавать в правильном порядке либы, нет?
источник

X

XÆA-XII in Ассемблер
ld -m elf_i386 boot.o target/i686-unknown-linux-gnu/release/libuntitled1.a
источник

X

XÆA-XII in Ассемблер
Только код из libuntitled.a на первом месте, а из boot.o в самом конце
источник

X

XÆA-XII in Ассемблер
Самое интересное, что если передать в другом порядке, то он пожалуется на отсутствие _os_start
источник

X

XÆA-XII in Ассемблер
Магия какая-то
источник

d

disba1ancer in Ассемблер
у тебя же нету стандартных либ?
источник

X

XÆA-XII in Ассемблер
В каком смысле?
источник

d

disba1ancer in Ассемблер
ну у тебя код без оси?
источник

X

XÆA-XII in Ассемблер
Да
источник

d

disba1ancer in Ассемблер
i686-unknown-linux-gnu вот это попахивает плохо, если без оси
источник

d

disba1ancer in Ассемблер
тогда тебе надо отключить в линкере автоматическое подключение стандартных либ и вручную подключить те которые надо, обычно это -lgcc и несколько crt*.o
источник

X

XÆA-XII in Ассемблер
Да у меня ничего не подключается
источник

X

XÆA-XII in Ассемблер
Просто код идёт в другом порядке
источник

d

disba1ancer in Ассемблер
а вообще тебе надо собрать i686-elf тулчейн
источник

d

disba1ancer in Ассемблер
я не вижу -nostdlibs — значит подключается
источник

d

disba1ancer in Ассемблер
я не помню точно как этот ключ пишется
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
всегда думал что boot загрузчик это чистый бинарный файл, без всяких форматов по типу elf, pe, со своими структурами
источник