dlopen

    0

    1답변

    나는 공유 라이브러리가 잘못되었습니다 (정의되지 않은 심볼). dlopen()을 처음 호출하면 dlerror()에서 올바른 오류 메시지가 표시된 NULL 결과가 나타납니다. 오류 메시지를 무시하고 동일한 인수를 사용하여 dlopen()을 호출하면 두 번째로 null이 아닌 핸들이 생깁니다 (라이브러리가 성공적으로로드되었음을 나타냄). 이것은 분명히 잘못되었

    3

    1답변

    다른 .dylib 파일에서 .dylib 파일을 호출하려고합니다. 그들은 같은 폴더에 있습니다. 나는 이렇게한다 : void * handle = dlopen ("./ other.dylib", RTLD_LAZY); 하지만 핸들이 NULL이되고 dlerror()는 찾지 못한다고 말합니다. 그러나 절대 경로를 사용하면 작동합니다. 문서에서는 상대 경로를 사용할 수

    3

    2답변

    iOS에서 이름으로 함수를 호출 할 수 없습니까? 나는 getstring이라는 C 함수를 가지고있다. void* handle = dlopen(NULL, RTLD_NOW); if (handle) { fp func = dlsym(handle, "getstring"); if (!func) responseField.text = [NSString s

    7

    1답변

    배경 : 나는 윈도우를 통해 C++ GNU/리눅스 응용 프로그램을 포팅하는 골치 아픈 작업과 자신을 발견했습니다. 이 애플리케이션이 수행하는 작업 중 하나는 특정 경로에서 공유 라이브러리를 검색 한 다음 posix dlopen() 및 dlsym() 호출을 사용하여 동적으로 클래스를로드하는 것입니다. 우리는 내가 여기로 가지 않을 것 인이 방법으로 로딩을하는

    1

    1답변

    현재 우리는 tcp/ip, udp/ip, usb 등 코어에 통신 형태를 제공하는 서비스 플러그인을 허용하는 코드 본문을 가지고 있습니다.이 서비스 플러그인은 피드백 처리기 클래스 인스턴스를 추가 처리를 위해 코어에 추가합니다. 현재 구현에서 서비스 프로젝트 (dlopen과 friends를 통해 코어에서 런타임에 가져온 별도의 동적 링크 라이브러리 임)는 코

    2

    1답변

    나는 꽤 많은 공유 라이브러리로 구성된 응용 프로그램을 가지고있다. 나는 그 중 일부에 펄 확장을 작성했다. 또한 perl을 응용 프로그램에 임베드했습니다. 저는 C++에서 perl 스크립트를 호출하고 있습니다. 내 펄 확장이 SV :: 순 :: 정보 및 SV :: 인터페이스로 명명하고 내 펄 파일 내가 C에서 펄 스크립트를 읽어 ++ 및 보낼 수있어이 u

    8

    3답변

    일부 제한 사항 때문에 런타임시 C로 작성된 라이브러리를로드해야합니다. 제 3자는 두 개의 라이브러리를 정적 아카이브로 제공하여 공유 객체로 만듭니다. 내가 작업하고있는 응용 프로그램은 일부 하드웨어 매개 변수를 기반으로 런타임에 라이브러리 중 하나를로드합니다. 불행히도 라이브러리 중 하나는 주로 전역 변수로 구성됩니다. 이미 함수 참조를로드하는 데 dls

    4

    1답변

    공유 라이브러리 (또는 DLL)가 dlopen 및 dlclose 메커니즘을 통해 사용되고 있고 작성된 공유 라이브러리에 힙에서 온 메모리가있는 전역 변수가있는 경우 dlclose가 호출 될 때 해당 변수와 메모리에 어떤 일이 발생하게됩니까? ? 동일한 프로세스에서 dlopen이 다시 호출되면 동작은 어떻게됩니까?

    2

    1답변

    C++에서 동적으로 정의 된 전역 변수를 동적 라이브러리에서 액세스 할 수 있습니까? 다음과 같이 헤더 파일에 선언 된 전역 변수가 있습니다. 파일명 : 다음 TestVariable.hpp 다음 #ifndef TESTVARIABLE_HPP #define TESTVARIABLE_HPP extern int testVariable; #endif 및

    4

    2답변

    미해결 된 심볼 참조가 발생하면이를 트랩 할 수 있으므로 필요에 따라 심볼을 확인하려고 함수를 호출 할 수 있습니까? 아니면 라이브러리 파일을 생성하지 않고 런타임에 동적 심볼 테이블에 새 심볼을 추가하여 dlopening 할 수 있습니까? 나는 GCC를 사용하여 GNU/리눅스에있다. (다른 유닉스로의 이식성은 좋지만 중요한 문제는 아닙니다.) 미리 감사드