Size: a a a

Ассемблер

2020 December 10

s

salvoroni in Ассемблер
Aleksandr
сча гляну, но у тебя makefile неполноценный. добавь PHONY, создание папки obj и игнорирование ошибок при clean
вот фото, если будете прогонять программу
источник

A

Aleksandr in Ассемблер
u@p:~/bmp_rotate$ nasm -f elf64 src/plugins/sepia_asm.asm -o obj/sepia_asm.o
src/plugins/sepia_asm.asm:2: error: no special symbol features supported here
источник

s

salvoroni in Ассемблер
на 2 строке линковка glibc memcpy...
источник

s

salvoroni in Ассемблер
у меня такой ошибки не было
сейчас попробую решить
источник

s

salvoroni in Ассемблер
Aleksandr
u@p:~/bmp_rotate$ nasm -f elf64 src/plugins/sepia_asm.asm -o obj/sepia_asm.o
src/plugins/sepia_asm.asm:2: error: no special symbol features supported here
можете в исходниках убрать :function на 2 строке?
источник

A

Aleksandr in Ассемблер
nasm -f elf64 src/plugins/sepia_asm.asm -o obj/sepia_asm.o
src/plugins/sepia_asm.asm:34: warning: uninitialized space declared in non-BSS section `.data': zeroing [-w+other]
src/plugins/sepia_asm.asm:37: warning: uninitialized space declared in non-BSS section `.data': zeroing [-w+other]
src/plugins/sepia_asm.asm:38: warning: uninitialized space declared in non-BSS section `.data': zeroing [-w+other]
src/plugins/sepia_asm.asm:39: warning: uninitialized space declared in non-BSS section `.data': zeroing [-w+other]
src/plugins/sepia_asm.asm:77: error: symbol `memcpy' undefined
src/plugins/sepia_asm.asm:81: error: symbol `memcpy' undefined
src/plugins/sepia_asm.asm:85: error: symbol `memcpy' undefined
src/plugins/sepia_asm.asm:104: error: label `sepia_sse.end' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:109: error: label `sepia_creator' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:138: error: label `sepia_creator.first_stage' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:143: error: label `sepia_creator.second_stage' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:148: error: label `sepia_creator.third_stage' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:152: error: label `sepia_creator.conclusion' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:168: error: label `sepia_creator.fst' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:173: error: label `sepia_creator.scnd' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:178: error: label `sepia_creator.thrd' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:183: error: label `sepia_creator.fth' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:188: error: label `sat' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:191: error: label `sat.ok' changed during code generation [-w+error=label-redef-late]
src/plugins/sepia_asm.asm:193: error: label `sat.less' changed during code generation [-w+error=label-redef-late]
make: *** [Makefile:43: sepia_asm.o] Error 1
источник

A

Aleksandr in Ассемблер
увы, тут я не помогу
источник

s

salvoroni in Ассемблер
а у вас в системе есть вообще memcpy? просто странно это
источник

s

salvoroni in Ассемблер
Aleksandr
увы, тут я не помогу
у вас линукс же?
источник

A

Aleksandr in Ассемблер
u@p:~/bmp_rotate$ nm -D /usr/lib/libcc1.so
                w _ITM_deregisterTMCloneTable
                w _ITM_registerTMCloneTable
                U _Unwind_Resume
                U _ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEcm
<...>
00000000000100c0 T iterative_hash
0000000000016490 B libiberty_concat_ptr
                U malloc
                U memcmp
                U memcpy
                U memset
                U opendir
                U pipe
                U read
                U readdir
                U realloc
000000000000f270 T reconcat
                U sbrk
                U select
                U socketpair
                U stderr
                U strcmp
                U strlen
                U waitpid
                U write
00000000000104d0 T xcalloc
<...>
источник

A

Aleksandr in Ассемблер
в
/lib/x86_64-linux-gnu/libc-2.31.so
тоже все в порядке
источник

s

salvoroni in Ассемблер
Aleksandr
в
/lib/x86_64-linux-gnu/libc-2.31.so
тоже все в порядке
эх
тогда не знаю как это решить
и в гугле тоже ничего
спасибо, что попытались, попробую все же сам
источник

A

Aleksandr in Ассемблер
починил
источник

s

salvoroni in Ассемблер
как?
источник

A

Aleksandr in Ассемблер
надо не mamcpy:function, а просто memcpy
источник

s

salvoroni in Ассемблер
salvoroni
можете в исходниках убрать :function на 2 строке?
фух
источник

A

Aleksandr in Ассемблер
а, я не так прочитал и убрал всю строку
источник

A

Aleksandr in Ассемблер
./build/main -p asm-sepia.bmp -o out.bmp -t sepia_asm -a none
завершается, но файла на выходе нет. что я делаю не так?
источник

s

salvoroni in Ассемблер
попробуйте
./build/main -t sepia_asm -p asm-sepia.bmp -o out.bmp

есть предположение что так заработает...
источник

A

Aleksandr in Ассемблер
и правда
источник