posixmodule "undeclared function" error when compiling with sanitizer options on Termux (Android)
Aberta
Ninguém assumiu esta issue ainda.
build
extension-modules
OS-android
- Linguagem predominante
- Python
- Estrelas
- 77.2k
- Forks
- 36k
- Métricas de merge de PRs
- Métricas de PR pendentes
Descrição
Python fails to compile when compiling with the sanitizer option.
Python/fileutils.c:458:1: warning: unused function 'decode_current_locale' [-Wunused-function] 458 | decode_current_locale(const char* arg... | ^~~~~~~~~~~~~~~~~~~~~
Python/fileutils.c:677:1: warning: unused function 'encode_current_locale' [-Wunused-function] 677 | encode_current_locale(const wchar_t *t... | ^~~~~~~~~~~~~~~~~~~~~ 2 warnings generated.
./Modules/posixmodule.c:10400:15: error: call to undeclared function 'wait3'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 10400 | pid = wait3(&status, options, &ru); | ^ 1 error generated. make: ***
[Makefile:3808: Modules/posixmodule.o] Error 1 make: *** Waiting for unfinished jobs...
clang option use.
aarch64-linux-android-clang -fsanitize=address -fsanitize=undefined
aarch64-linux-android-clang++ -fsanitize=address -fsanitize=undefined -fno-sanitize=vptr
aarch64-linux-android-clang --version
clang version 21.1.3
Target: aarch64-unknown-linux-android24
Thread model: posix
InstalledDir: /data/data/com.termux/files/usr/bin
.git revision is at bedaea05987738c4c6b958d19cec9621bec09f07
Compiling with no sanitizer option works.
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece em Modules/posixmodule.c, próximo à chamada de wait3 relatada perto da linha 10400, e depois reproduza o build com os comandos de sanitizer do Termux fornecidos e com a configuração sem sanitizer para comparação. Considera-se concluído quando o CPython compilar com as opções de sanitizer sem o erro de função não declarada.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- android, c, python
- Domínio
- build-system, operating-systems
- Tipo de issue
- Bug
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Status de atividade
- Pouca atividade
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 48/100