Suave "Привет, мир!"программа не работает с Visual Studio для Mac - PullRequest
0 голосов
/ 07 декабря 2018

Я получил ошибки во время выполнения, пытаясь выполнить «Hello World!»программа с веб-страницы Suave:

открыть Suave.Web открыть Suave.Successful

[<EntryPoint>]
let main argv =
    startWebServer defaultConfig (OK "Hello, Suave!")
    0

С этими ошибками:

Загруженная сборка: / Users / [myUserName] / Библиотека / Мобильные документы / com ~ apple ~ CloudDocs / Проекты / SuaveRestApi / SuaveRestApi / bin / Debug / SuaveRestApi.exe Загруженная сборка: / Пользователи / [myUserName] / Библиотека / Мобильные документы / com ~ apple ~ CloudDocs / Проекты / SuaveRestApi/SuaveRestApi/bin/Debug/FSharp.Core.dll [Внешняя] Загруженная сборка: / Пользователи / [myUserName] / Библиотека / Мобильные документы / com ~ apple ~ CloudDocs / Проекты / SuaveRestApi / SuaveRestApi / bin / Debug / Suave.dll [Внешняя] Загруженная сборка: /Library/Frameworks/Mono.framework/Versions/5.18.0/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll [Внешняя] Загруженная сборка: /Library/Frameworks/Mono.framework/Versions/5.18.0/lib/mono/gac/Mono.Security/4.0.0.0__0738eb9f132ed756/Mono.Security.dll [Внешний] Метод idx 6984 больше, чем количество строк (6984) в таблице PPDB MethodDebugInformation, для метода.$ YoLo: .cctor в '/ Users / [myUserName] / Библиотека / Мобильные документы / com ~ apple ~ CloudDocs / Проекты / SuaveRestApi / SuaveRestApi / bin / Debug / Suave.pdb '.Вероятно, неправильно сформированный файл PDB.Stacktrace:

в <0xffffffff> в (управляемом оболочке) объекте .__ icall_wrapper_mono_generic_class_init (intptr) [0x00007] в <699ddfd029d348d1a69fb1f9fc28d7000: 0 0: 0 0 0 0>> 0> 0> 0>/ademar/Projects/release/suave/src/Suave/Utils/YoLo.fs:447 в Suave.Successful.OK (строка) [0x00000] в / Users / ademar / Projects / release / suave / src / Suave / Combinators.fs: 136 в App.main (строка []) [0x00000] в / Users / [myUserName] / Библиотека / Мобильные документы / com ~ apple ~ CloudDocs / Проекты / SuaveRestApi / SuaveRestApi / App.fs: 6 в (среда выполнения оболочки-invoke) .runtime_invoke_int_object (object, intptr, intptr, intptr) [0x00057] в <5c0abea33afd9276a7450383a3be0a5c>: 0 Память вокруг указателя на собственную инструкцию (0x7fff71ccc23e): 0x7fff71ccc3 0 0 0 0 0 0 0 0 0 8 0 0 90ff 90 0f 90 90ff 0 900 ff 90 bf 90 90f..... H ... I .... 0x7fff71ccc23e 73 08 48 89 c7 e9 6f a1 ff ff c3 55 48 89 e5 41 sH..o .... UH..A 0x7fff71ccc24e 57 41 56 41 55 4154 53 48 81 ес 88 00 00 00 49 WAVAUATSH ...... I 0x7fff71ccc25e 89 f4 48 8d 05 01c3 cb 32 48 8b 00 48 8d 9d 60 ..H ..... 2H..H..`

Собственная трассировка стека:

0 моно 0x000000010ba29842 mono_dump_native_crash_info + 898 1 моно
0x000000010b9cd303 mono_handle_native_crash + 195 * 2 * 1016 libsystem_platform.dylib 0x00007fff71d77b3d _sigtramp + 29 3 моно 0x000000010bcdf008 simple_lower_case_mapping_higharea_table0 + 20296 4
libsystem_c.dylib 0x00007fff71c351c9 прерывани + 127 5 моно 0x000000010bbf9c5f mono_log_write_logfile + 351 6 моно
0x000000010bc15dac monoeg_g_log + 204 7 моно
0x000000010bac9e68 mono_ppdb_get_seq_points + 1112 8 моно
0x000000010b93492f mono_method_to_ir + 1151 9 моно
0x000000010b91ade7 mini_method_compile + 3479 10 моно * тысяча двадцать-дв * 0x000000010b91e32c mono_jit_compile_method_inner + 76 11 моно * тысяча двадцать три * 0x000000010b921cc9 mono_jit_compile_method_with_opt + 2665 12 моно
0x000000010b925d8e mono_jit_runtime_invoke+ 526 13 моно
0x000000010bb241d4 do_runtime_invoke + 84 14 моно
0x000000010bb201a8 mono_runtime_class_init_full + 872 15 моно
0x000000010b97a69c mono_generic_class_init + 28 16 ??? * +1028 * 0x000000010beb7e2c 0x0 + 4494949932 17 моно * * 0x000000010b9261d3 тысяча двадцать-девять mono_jit_runtime_invoke + 1619 18 моно
0x000000010bb241d4 do_runtime_invoke + 84 19 моно * * 0x000000010bb27cac тысячу тридцать-одна do_exec_main_checked + 15620 моно
0x000000010b98d19d моно_jit_exec + 349 21 моно
0x000000010b99037f mono_main + 11615 22 моно
0x000000010b915078 основные + 264 23 libdyld.dylib
0x00007fff71b8ced9 старт + 1 Pkilling 0x70000ed57000 из 0x1115795c0 Pkilling 0x70000eb54000 из 0x1115795c0 Ввода нити Summarizer паузы от 0x1115795c0 Законченных пауз нити Summarizer от 0x1115795c0.

Ожидание возобновления потоков дампа

Отладочная информация из gdb:

(lldb) источник команды -s 0 '/tmp/mono-gdb-commands.UoI26p' Выполнение команд в '/ tmp/mono-gdb-commands.UoI26p.(lldb) присоединение процесса --pid 1457 Процесс 1457 остановлен * thread # 1, name = 'tid_307', queue = 'com.apple.main-thread', причина остановки = signal SIGSTOP frame # 0: 0x00007fff71ccb2d2 libsystem_kernel.dylib __wait4 + 10 libsystem_kernel.dylib __ wait4: -> 0x7fff71ccb2d2 <+10>: jae 0x7fff71ccb2dc;<+20> 0x7fff71ccb2d4 <+12>: movq% rax,% rdi 0x7fff71ccb2d7 <+15>: jmp 0x7fff71cc6381;cerror 0x7fff71ccb2dc <+20>: retq Цель 0: (моно) остановлена.

Для исполняемого модуля задано значение "/Library/Frameworks/Mono.framework/Versions/5.18.0/bin/mono".Архитектура установлена ​​на: x86_64h-apple-macosx.(lldb) список потоков Процесс 1457 остановлен * поток # 1: tid = 0xd6f5, 0x00007fff71ccb2d2 libsystem_kernel.dylib __wait4 + 10, name = 'tid_307', queue = 'com.apple.main-thread', stop reason = signal SIGSTOP thread #2: tid = 0xd6f6, 0x00007fff71cc97de libsystem_kernel.dylib __ psynch_cvwait + 10, имя = рабочий поток SGen # 3: tid = 0xd6f8, 0x0000nel46fiblibfxbcd71+ 10, name = 'агент отладчика'
поток # 5: tid = 0xd700, 0x00007fff71cc7b6a libsystem_kernel.dylib __workq_kernreturn + 10 thread #6: tid = 0xd701, 0x00007fff71cc7b6a libsystem_kernel.dylib __ workq_kernreturn + 10 (lldb) поток возвращает все * поток # 1, имя = 'tid_307', очередь = 'com.apple.main-thread ', причина остановки = сигнал SIGSTOP * frame # 0: 0x00007fff71ccb2d2 libsystem_kernel.dylib __wait4 + 10 frame #1: 0x000000010ba299b6 mono mono_dump_native_crash_info в mini-posix.c: 1079 [opt] frame # 2: 0x000000010ba29862_ моно * моно * моно * моно= "SIGABRT", ctx = 0x00007ffee42eb0f0, info = 0x00007ffee42eb088) в мини-исключении.+ 127 frame # 8: 0x000000010bbf9c5f mono mono_log_write_logfile(log_domain=<unavailable>, level=<unavailable>, hdr=<unavailable>, message="Method idx 6984 is greater than number of rows (6984) in PPDB MethodDebugInformation table, for method <StartupCode$Suave>.$YoLo:.cctor in '/Users/[myUserName]/Library/Mobile Documents/com~apple~CloudDocs/Projects/SuaveRestApi/SuaveRestApi/bin/Debug/Suave.pdb'. Likely a malformed PDB file.") at mono-log-common.c:135 [opt] frame #9: 0x000000010bc15dac mono monoeg_g_log [встроенный] monoeg_g_logstr (журнал_domain = 0x0000000000000000, log_level = G_LOG_LEVEL_ERROR, msg =) в goutput.c: 117 [opt] frame # 10: 0x000000010bc15d83 mono monoeg_g_log [inlined] monoeg_g_logv_nofree(format=<unavailable>, args=<unavailable>) at goutput.c:128 [opt] frame #11: 0x000000010bc15d70 mono monoeg_g_log [встроенный] monoeg_g_logv (формат: выходной сигнал): 135: выходной сигнал (формат: на выходе): выходной сигнал: (135): выходной сигнал: [выходной сигнал]: выходной сигнал: (135): выходной сигнал: (135): выходной сигнал: [выходной сигнал]: выходной сигнал: (135);frame # 12: 0x000000010bc15d70 mono monoeg_g_log(log_domain=0x0000000000000000, log_level=G_LOG_LEVEL_ERROR, format=<unavailable>) at goutput.c:144 [opt] frame #13: 0x000000010bac9e68 mono mono_ppdb_get_seq_points (minfo =, source_file =, source_file_list =, source_files =, seq_points = 0x00007ffee42eb730, n_seq_points =) 420000b0: oo0: 0 0 0 0 0 0 0 0 0 0 7 7 0 6 7 0 6 7 00 0 6 7 00,0000,501056 * mini_method_compile (method =, opts = 374434303, домен = 0x00007fbc91f02f00, флаги = JIT_FLAG_RUN_CCTORS, parts = 0, aot_method_index = -1) в mini.c: 3455 [opt] кадр # 16: 0x000000_t_t_t_t_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0 *0x00007fbc94832ea8, опт =, jit_only = 1, ошибка = 0x00007ffee42ebd60) в мини-runtime.c: 2411 [OPT] кадр # 18: 0x000000010b925d8e моно mono_jit_runtime_invoke [inlined] mono_jit_compile_method_jit_only(method=<unavailable>, error=0x00007ffee42ebd60) at mini-runtime.c:2471 [opt] frame #19: 0x000000010b925d6e mono mono_jit_runtime_invoke (метод =, = OBJ, PARAMS = 0x0000000000000000, возб =, = ошибка0x00007ffee42ebd60) в mini-runtime.c: 3011 [опция] frame # 20: 0x000000010bb241d4 mono do_runtime_invoke(method=0x00007fbc94832ea8, obj=0x0000000000000000, params=0x0000000000000000, exc=0x00007ffee42ebd08, error=0x00007ffee42ebd60) at object.c:2960 [opt] frame #21: 0x000000010bb201a8 mono mono_runtime_class_init_full [встроенный] mono_runtime_try_invoke (method =, obj =, params =, error = 0x00007ffee42ebd60) в object.c: 3069 [opt] frame # 22: 0x000000010bb20167 mono mono_runtime_class_init_full(vtable=0x00007fbc9402ee60, error=0x00007ffee42ebd60) at object.c:526 [opt] frame #23: 0x000000010b97a69c mono mono_generic_class_init (vtable =) в виртуальной реальности: 151 [15]] кадр # 24: 0x000000010beb7e2c кадр # 25: 0x000000010b9261d3 моно mono_jit_runtime_invoke(method=<unavailable>, obj=<unavailable>, params=0x00007ffee42ec148, exc=0x00007fbc9402ee60, error=<unavailable>) at mini-runtime.c:3148 [opt] frame #26: 0x000000010bb241d4 mono do_runtime_invoke (метод = 0x00007fbc91f04798, OBJ = 0x0000000000000000, PARAMS = 0x00007ffee42ec148, возб = 0x0000000000000000, ошибка = 0x00007ffee42ec180) при object.c: 2960 [OPT] кадр # 27:0x000000010bb27cac mono do_exec_main_checked [inlined] mono_runtime_invoke_checked(method=<unavailable>, obj=<unavailable>, params=<unavailable>, error=0x00007ffee42ec180) at object.c:3128 [opt] frame #28: 0x000000010bb27c9d mono do_exec_main_checked (метод = 0x00007fbc91f04798, args =, ошибка = 0x00007ffee42ec180) в object.c: 4949 [opt] кадр № 29: 0x000000010b98d19d моно (домен = 10c) = моно mono_jit_exec at driver.g.c:1236 [opt] frame #30: 0x000000010b98d18f mono моноблок (домен = 1064) = моно * 1063argc = 1, argv = 0x00007ffee42ec550) в driver.gc: 1195 [опция] frame # 31: 0x000000010b99037f mono mono_main [inlined] main_thread_handler at driver.g.c:1313 [opt] frame #32: 0x000000010b990348 mono mono_main (argc = 4, argv =) в driver.gc: 2483 [опция] frame # 33: 0x000000010b50main [inlined] mono_main_with_options(argc=<unavailable>, argv=<unavailable>) at main.c:50 [opt] frame #34: 0x000000010b915064 mono main (argc = 4, argv =) в main.c: 405 [opt] frame # 35: 0x00007fff71b8ced9 libdyld.dylib start + 1 frame #36: 0x00007fff71b8ced9 libdyld.dylib start + 1 поток # 2, name = 'SGen worker' frame # 0: 0x00007fff71cc97delibsystem_kernel.dylib __psynch_cvwait + 10 frame #1: 0x00007fff71d83593 libsystem_pthread.dylib _pthread_cond_wait + 724 frame # 2: 0x000000010bbf10ee mono thread_func [inlined] mono_os_cond_wait(mutex=<unavailable>) at mono-os-mutex.h:173 [opt] frame #3: 0x000000010bbf10db mono thread_func в sgen-thread-pool.c: 165 [опция] frame # 4: 0x000000010bbf10cd моно thread_func(data=0x0000000000000000) at sgen-thread-pool.c:196 [opt] frame #5: 0x00007fff71d80305 libsystem_pthread.dylib _pth6_f_f_f_64_f_f_f_f_f_0_f_00_f_60.dylib _pthread_start + 70 frame #7: 0x00007fff71d7f415 libsystem_pthread.dylib thread_start + 13 поток # 3, имя = 'Финализатор' frame # 0: 0x00007fff71cc61b6 libsystem_kernel.dylib semaphore_wait_trap + 10 frame #1: 0x000000010bb9e9aa mono finalizer_thread [встроенный] mono_os_sem_wait (flags = MONO_SEM_FLAGS_ALERTABLE) в 90-дневной базе данных] frame # 2: 0x000000010bb9e99f mono finalizer_thread at mono-coop-semaphore.h:43 [opt] frame #3: 0x000000010bb9e985 mono finalizer_thread (не используется =) в gc.c: 918 [opt] frame # 4: 0x000000010bb49e13 mono start_wrapper [inlined] start_wrapper_internal at threads.c:1151 [opt] frame #5: 0x000000010bb49d83 mono start_wrapper (data = 0x00007fbc91f34850) в потоках.я # 6: 0x00007fff71d80305 libsystem_pthread.dylib _pthread_body + 126 frame #7: 0x00007fff71d8326f libsystem_pthread.dylib _pthread_start + 70 frame # 8: 0x00007fff71d7f415 libsystem_pthread.dylib thread_start + 13 thread #4, name = 'Debugger agent' frame #0: 0x00007fff71cc93e6 libsystem_kernel.dylib __ recvfrom + 10 кадр # 1: 0x000000010ba_bug_jpgagent.c: 1518 [OPT] кадр # 3: 0x000000010ba6f27c моно debugger_thread(arg=<unavailable>) at debugger-agent.c:9484 [opt] frame #4: 0x000000010bb49e13 mono start_wrapper [встраиваемыми] start_wrapper_internal в threads.c: 1151 [OPT] кадр # 5: 0x000000010bb49d83 моно * +1078 * _pthread_body + 126 кадр # 7: 0x00007fff71d8326f libsystem_pthread.dylib _pthread_start + 70 frame #8: 0x00007fff71d7f415 libsystem_pthread.dylib start_start + 13 thread # 5 frame # 0: 0x00007fff71cc7b6a libsystem_kernel.dylib __workq_kernreturn + 10 frame #1: 0x00007fff71d7f630 libsystem_pthread.dylib _pthread_wqthread + 446 фрейма # 2: 0x00007fff71d7f405 libsystem_pthread.dylib * 1081+ 13 (lldb) detach

================================================================ Получил SIGABRT при выполнении нативного кода.Это обычно указывает на фатальную ошибку во время выполнения mono или в одной из собственных библиотек, используемых вашим

приложением.

(lldb) quit Процесс 1457 отсоединен

1 Ответ

0 голосов
/ 08 декабря 2018

Кажется, проблема с Visual Studio для Mac и Suave.Я сделал тот же тест в коде Visual Studio (также для Mac) и работал нормально.

...