Вопросы по теме 'dlsym'
Использование общих библиотек с dlopen - общий объект не может найти символ, экспортированный программой загрузки
Итак, у меня есть следующий пример, который я пытаюсь запустить.
header.h
extern "C" {
void registerfunc();
};
main.cpp
#include "header.h"
#include <dlfcn.h>
#include <iostream>
using namespace std;
typedef void...
1169 просмотров
schedule
13.11.2021
dlsym время от времени выдает ошибку сегмента
Заранее благодарим за прочтение этого вопроса. Наша программа столкнулась со странной проблемой: "dlsym" время от времени выдает ошибку "сегментный сбой". Фон состоит в том, что наш движок загружает несколько общих библиотек в один процесс и...
271 просмотров
schedule
03.11.2021
Как получить доступ к (динамически выделенным) массивам Fortran в C
Мой главный вопрос заключается в том, почему массивы делают такие странные вещи и есть ли вообще способ сделать следующее «чистым» способом.
В настоящее время у меня есть программа C foo.c , взаимодействующая с программой Fortran bar.f90 через...
3384 просмотров
schedule
05.05.2022
C --› malloc --› dlsym
Я использовал dlsym() для вызова своей версии malloc вместо библиотеки malloc по умолчанию:
lt_malloc = (void*(*)(size_t))dlsym(RTLD_NEXT, "malloc");
TRACE((stderr, "initialize: lt_malloc=%p\n", lt_malloc));
if (!lt_malloc) {...
1392 просмотров
schedule
02.04.2023
Объедините C и TCL, используя Swig
Я следил за учебным пособием по объединению C с TCL с использованием Swig. Учебник, казалось, работал правильно, но в конце я столкнулся с ошибкой, которую не могу решить. Ситуация следующая:
Я следил за учебником:...
755 просмотров
schedule
11.10.2023
Очистка интерпозиции функций с помощью dlsym
В качестве оболочки malloc я использую этот классический фрагмент кода:
#define _GNU_SOURCE
#include <stdio.h>
#include <stdint.h>
#include <dlfcn.h>
void* malloc(size_t size)
{
static void* (*real_malloc)(size_t) = NULL;...
443 просмотров
schedule
21.03.2023
Переопределение «бесплатно» или «удалить» с помощью LD_PRELOAD и dlsym()
Переопределение 'malloc' с использованием механизма LD_PRELOAD
Как можно использовать LD_PRELOAD для установки ptr в NULL или любой другой адрес памяти, чтобы избежать эксплойтов с висячими указателями.
void free(void *ptr)
{...
479 просмотров
schedule
04.07.2023
dlopen / dlsym: ошибка при получении указателя на функцию
Я пытаюсь получить указатель на функцию с помощью dlopen и dlsym, однако мне не удалось заставить его работать правильно. Ошибка при попытке выполнить вызов dlsym. Ниже мой код.
Любая помощь, пожалуйста?
#include <dlfcn.h>
#include...
4440 просмотров
schedule
17.07.2023
Загрузка таких файлов с помощью dlsym не может загрузить библиотеку
Я реализую API, который загружает плагины из файлов .so. Для их загрузки я использую функцию dlsym(). Чтобы проверить, работает ли это, я внедрил тестовый плагин (ниже) и, чтобы упростить задачу, я загружаю только функцию «инициализировать». Чтобы...
1432 просмотров
schedule
10.12.2022
Ссылка на переменную по имени в C ++ с помощью таблицы символов
В основном то, о чем спрашивает название.
Я немного не знаком с C++ и более продвинутыми концепциями, такими как таблицы символов, я изучал их в Интернете, но изо всех сил пытаюсь найти какое-либо направление к моей конечной цели. Большинство...
1097 просмотров
schedule
23.05.2023
Можно ли генерировать команды dlsym из файла .h?
УЖЕ РЕШЕНО! Посмотрите результат здесь . эм>
Не уверен, правильно ли я спрашиваю, но кто-нибудь знает правильный способ создания команд dlopen и dlsym на основе файла .h?
Я пытаюсь динамически загрузить SDL2 — библиотеку, написанную на C,...
207 просмотров
schedule
30.06.2023
Динамическая загрузка общей библиотеки с помощью dlopen
Я пытаюсь загрузить TestCode.so с помощью dlopen. getNumber() — это функция, которую я хочу использовать из TestCode.so. Но когда я загружаю .so. Я не могу использовать функцию. Это дает ошибку сегментации.
Пример программы: TestHeader.hpp...
301 просмотров
schedule
19.05.2023
Неопределенный символ для dlsym в С++
У меня есть одна программа на С++, которую я хочу загрузить в свою текущую программу на С++. Ниже приведен фрагмент
Файл: a.cpp
#include<bits/stdc++.h>
using namespace std;
void abc() {
cout << "This is abc"...
632 просмотров
schedule
31.01.2023
Использование dlsym() для заглушки malloc/free приводит к ошибке сегментации
Я начал баловаться модульным тестированием кода C (используя проверку) и заглушки функций. Я пытаюсь выполнить модульное тестирование небольшой библиотеки структур данных, которую я написал, и хотел проверить, как она будет реагировать на OOM....
156 просмотров
schedule
13.01.2023
Альтернативы dlsym() и dlopen() в C++
У меня есть приложение, часть которого использует общие библиотеки. Эти библиотеки компонуются во время компиляции. Во время выполнения загрузчик ожидает, что общий объект будет в LD_LIBRARY_PATH , если он не найден, все приложение вылетает с...
18446 просмотров
schedule
24.11.2023
как вызвать atexit в общей библиотеке?
В разделяемой библиотеке функция func1() имеет atexit(terminate_global), и эта разделяемая библиотека не имеет « атрибута ((конструктор))» и « атрибут (( деструктор))». Итак, поток программы выглядит следующим образом: 1) Приложение загружает...
1839 просмотров
schedule
19.01.2024