|
0 / 0 / 0
Регистрация: 14.10.2015
Сообщений: 51
|
||||||
Ошибка Segmentation fault: 1131.10.2018, 00:03. Показов 3891. Ответов 5
Метки нет (Все метки)
Приветствую! В данный момент пишу дипломную работу, хочу вызывать из Java c помощью JNI API данный ассемблерный код:
Опыт ассемблера не очень большой, поэтому основу кода позаимствовал с гитхаба, чтоб потом поменять, но пока хотел вообще попробовать запустить данный код. Но так как использую MacOS, то данный код необходимо было преобразовать из elf64 в macho64, что я и сделал с помощью утилиты objconv. Я скомпилировать код в elf64, после чего сконвертировал его в macho64 и успешно слинковал, но при запуске выдаётся следующая ошибка "Segmentation fault: 11". Как я понял, это связано с тем, что в исходном коде какой-то косяк с сегментами или похожее нечто, нужна помощь в поиске ошибки.
0
|
||||||
| 31.10.2018, 00:03 | |
|
Ответы с готовыми решениями:
5
[C++/ASM] Segmentation fault
Ошибка Segmentation fault (11) |
|
Модератор
|
|
| 31.10.2018, 00:20 | |
|
Начиная со строки 190 что-то интересное - то ли процедуры без ret то ли странное завершение программы - вызов _fail, а оттуда вызов _exit. Что-то напутано с вызовами.
Наилучший способ - выполнить программу в отладчике по шагам.
0
|
|
|
0 / 0 / 0
Регистрация: 14.10.2015
Сообщений: 51
|
|
| 31.10.2018, 00:24 [ТС] | |
|
ФедосеевПавел, Я не особо линуксоид, но не подскажете ещё, вообще в целом насколько адекватен код и системные вызовы?
0
|
|
|
Модератор
|
|
| 31.10.2018, 00:34 | |
|
В целом нормально, но странный код начинается со строки 190.
И всё, что касается завершения программы (ошибочного или безошибочного) как-то странно выглядит по структуре - цепочка вызовов процедур. А по вызовам Linux затрудняюсь ответить. Нет опыта.
0
|
|
|
Asm/C++/Delphi/Py/PHP/VBA
|
|
| 03.11.2018, 19:55 | |
|
Ну там после 190 идут вызовы, которые не возвращаются, т.к. там закрытие всего и потом sys_exit, так что ret там и не нужен.
А по поводу ошибки – это нужно анализировать код, так сходу не скажу, тем более не знаю большую часть функций, которые здесь используются, надо рыться. А зачем используется objconv, когда можно сразу в мачо скомпилить? NASM же поддерживает! Ключ -fmacho64. Беглым взглядом вроде косяков нет, но это беглым...
0
|
|
|
0 / 0 / 0
Регистрация: 14.10.2015
Сообщений: 51
|
|
| 05.11.2018, 00:23 [ТС] | |
|
Jin X, знаю, я с этим ключом компилировал, но потом линкер ругался, маку нужен код написанный в его формате
0
|
|
| 05.11.2018, 00:23 | |
|
Помогаю со студенческими работами здесь
6
Ошибка Segmentation fault Ошибка SIGSEGV(Segmentation fault) Ошибка strcat ...segmentation fault Ошибка segmentation fault и QMenu Ошибка Segmentation fault (Core dumped) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|