동적라이브러리 생성시, Function 및 Class 를 Export하지 않으
글쓴이: bizzare / 작성시간: 수, 2005/06/08 - 10:41오전
리눅스에서는 c++에서 동적 라이브러리를 만들 때,
기본값으로 Function과 Class가 Export되어
다른 실행파일이나 라이브러리에서 해당 Function, Class를 사용할 수 있더군요.
윈도우에서는 Export한다는 키워드를 넣어주어야 하는데 말이죠.
하지만 리눅스에서도 원하는 Function, Class만 Export하고 싶은 경우에는 어떻게 해야하나요?
도움을 부탁드립니다.
Forums:


static음, static
static
음, static
저두 해 보질 못해서 뭐라고 말씀 못드리겠군요.하지만, 한번 해 보시
저두 해 보질 못해서 뭐라고 말씀 못드리겠군요.
하지만, 한번 해 보시기 바랍니다.
#define export MyExport export void function() { }gcc -c -Dexport=MyExport some_file.ccWOW Wow!!!
Computer Science is no more about computers than astronomy is about telescopes.
-- E. W. Dijkstra
함수의 경우에는 static을 쓰면 되지만 class는?
함수의 경우
static void Func(); 과 같은 식으로 선언하면
다른 라이브러리,실행파일에서 이 함수를 사용하지 못하지만..
클래스의 경우에는 어떻게 해야하는지 모르겠군요
Re: 좀 지나간 스레드긴 하지만..
GCC 4.0 의 changes 를 보다가 이쪽 관련된 변경점을 봐서 올려봅니다.
맨 아래 링크된 pdf 파일은 상당히 좋군요.
자세히 보진 않았지만, GCC 4.0 이전에는 클래스를 완전히 숨기는 것은 불가능했던거 같네요.