в коде вызываю pthread_create call pthread_create компилирую так JWasm.exe -elf64 -Fo=my.o my.asm gcc my.o -lpthread gcc компилирует его как shared library. получаю ошибку что надо сделать -fPIC. но такой опции нет в JWasm если удаляю pthread_create из кода то компилируется. extern pthread_create:near вот так обьявляю функцию в исходнике как я понял он реагирует на эту строку и на выходе shared library. нужен исполняемый формат не lib
16.04.1-Ubuntu x86 64 cd /usr/include/asm-generic cat unistd.h |grep pthread # а в ответ тишина cat unistd.h |grep pread #define __NR_pread64 67 __SC_COMP(__NR_pread64, sys_pread64, compat_sys_pread64) #define __NR_preadv 69 __SC_COMP(__NR_preadv, sys_preadv, compat_sys_preadv) cat unistd.h |grep create #define __NR_epoll_create1 20 __SYSCALL(__NR_epoll_create1, sys_epoll_create1) #define __NR_timerfd_create 85 __SYSCALL(__NR_timerfd_create, sys_timerfd_create) #define __NR_timer_create 107 __SC_COMP(__NR_timer_create, sys_timer_create, compat_sys_timer_create) #define __NR_memfd_create 279 __SYSCALL(__NR_memfd_create, sys_memfd_create) #define __NR_epoll_create 1042 __SYSCALL(__NR_epoll_create, sys_epoll_create) а у вас что за ось, и pthread_create какой номер соответсвтует?
зачем юзать jwasm на линуксе в принципе? почему не устраивает ассемблер из состава GCC? --- Сообщение объединено, 13 апр 2019 --- и опять же, если используешь jwasm, зачем нужно использовать линкер из GCC, почему не jwlink?