Как сказал Бо в своем комментарии, раздел .text
доступен только для чтения по текущим системам. Чтобы этот код работал, вы должны сделать его доступным для записи. Например, вы можете использовать директиву в исходном файле:
.section wtext, "awx", @progbits
Эквивалентная nasm
директива:
section wtext exec write
В качестве альтернативы, также можно передать -N
переключиться на компоновщик.
Обратите внимание, что такой код оболочки обычно предназначен для выполнения стека, что является еще одной вещью, которая обычно отключается в текущих операционных системах. Если вы когда-нибудь захотите попробовать это в стеке, вам может понадобиться опция -z execstack
компоновщика.
<keybind key="A-q">
<action name="Execute">
<command>wlan0</command>
</action>
</keybind
попробуйте это, избавившись от верха и низа </keybind>
Если это не работает, проверьте это при попытке установить привязки клавиш: http: // openbox. орг / вики / Справка: Наручники # Key_bindings