[Asan + msvc] Cpython build failed with error LNK2001: unresolved external symbol on windows
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 77.2k
- Forks
- 35.9k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Bug report
Bug description:
Cpython build failed with error LNK2001: unresolved external symbol on windows, this error looks start from commit 10f950c9bb0ff4583f361a42aaed562b330e1dba, the previous commit 9846407eaf385917d134ef5e3700c57c59f67684 built successfully.
Repro steps:
1. git clone https://github.com/python/cpython
2. Open VS2022 x64 CMD & set _CL_= /fsanitize=address /GS- /wd5072 & set _LINK_= /InferASanLibs /incremental:no /debug
3. cd /d C:\gitP\python\cpython\PCBuild
4. get_externals.bat --clean-only
5. build -e -p x64 -r --no-tkinter -v "/p:PlatformToolset=v143" "/p:WindowsTargetPlatformVersion=10.0.26100.0"
Failures
(Link target) ->
clang_rt.asan_dynamic_runtime_thunk-x86_64.lib(sanitizer_win_thunk_interception.cpp.obj) : error LNK2001: unresolved external symbol abort [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
clang_rt.asan_dynamic_runtime_thunk-x86_64.lib(asan_win_dynamic_runtime_thunk.cpp.obj) : error LNK2001: unresolved external symbol _initterm [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_initialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_uninitialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_uninitialize_critical [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_thread_attach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_thread_detach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _seh_filter_dll [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _is_c_termination_complete [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _configure_narrow_argv [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _initialize_narrow_environment [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _initialize_onexit_table [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _register_onexit_function [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _execute_onexit_table [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _crt_atexit [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _crt_at_quick_exit [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_initialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_uninitialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_uninitialize_critical [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_thread_attach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_thread_detach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _cexit [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __C_specific_handler [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __C_specific_handler [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol terminate [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol __current_exception [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol __current_exception_context [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol strstr [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol wcsstr [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_wcscpy_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_wcsncpy_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_wcsnlen [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_strnlen [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_calloc [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_free [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_malloc [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp___acrt_iob_func [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp___stdio_common_vswprintf_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp___stdio_common_vfprintf [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol wmemcpy_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __CxxFrameHandler4 [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(gshandlereh4.obj) : error LNK2001: unresolved external symbol __CxxFrameHandler4 [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol memcpy [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol wcsncmp [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
C:\gitP\python\cpython\PCbuild\amd64\python3t.dll : fatal error LNK1120: 42 unresolved externals [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
clang_rt.asan_dynamic_runtime_thunk-x86_64.lib(sanitizer_win_thunk_interception.cpp.obj) : error LNK2001: unresolved external symbol abort [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
clang_rt.asan_dynamic_runtime_thunk-x86_64.lib(asan_win_dynamic_runtime_thunk.cpp.obj) : error LNK2001: unresolved external symbol _initterm [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_initialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_uninitialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_uninitialize_critical [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_thread_attach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __vcrt_thread_detach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _seh_filter_dll [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _is_c_termination_complete [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _configure_narrow_argv [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _initialize_narrow_environment [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _initialize_onexit_table [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _register_onexit_function [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _execute_onexit_table [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _crt_atexit [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _crt_at_quick_exit [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_initialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_uninitialize [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_uninitialize_critical [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_thread_attach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __acrt_thread_detach [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol _cexit [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility.obj) : error LNK2001: unresolved external symbol __C_specific_handler [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __C_specific_handler [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol terminate [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol __current_exception [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol __current_exception_context [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol strstr [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol wcsstr [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_wcscpy_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_wcsncpy_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_wcsnlen [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_strnlen [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_calloc [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_free [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp_malloc [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp___acrt_iob_func [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp___stdio_common_vswprintf_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __imp___stdio_common_vfprintf [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol wmemcpy_s [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol __CxxFrameHandler4 [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
MSVCRT.lib(gshandlereh4.obj) : error LNK2001: unresolved external symbol __CxxFrameHandler4 [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol memcpy [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
VCASAN.lib(vcasan.obj) : error LNK2001: unresolved external symbol wcsncmp [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
C:\gitP\python\cpython\PCbuild\amd64\python3t.dll : fatal error LNK1120: 42 unresolved externals [C:\gitP\python\cpython\PCbuild\python3tdll.vcxproj]
CPython versions tested on:
CPython main branch
Operating systems tested on:
Windows
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne in PCBuild und im Ziel python3tdll.vcxproj und reproduziere den Fehler mit dem bereitgestellten VS2022, ASan und Build-Befehl. Vergleiche den Commit 10f950c9bb0ff4583f361a42aaed562b330e1dba mit 9846407eaf385917d134ef5e3700c57c59f67684, um die Änderung an der Windows-Linker-Konfiguration zu ermitteln; abgeschlossen ist die Aufgabe, wenn der x64-ASan-Build ohne unresolved externals erfolgreich abgeschlossen wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- build-system
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Aktiv
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100