vc++ 로 dll을 만들면 , .dll 과 이에 대한 임포트 .lib 파일이 생성되는데요,
이 중에서 .lib 를 어떻게 gcc 의 .a 로 변환할까 고민했었는데,
링커에서 .dll 을 직접 링킹이 되는 것처럼 링킹 에러 없이 실행도 잘 되네요??
Qt creator 가 뒤에서 어떤 짓을 해주는것 같은데,, 이거 정상 맞나요??
정확히 말하면 qt-creator가 하는게 아니고 gcc의 링커가 dll을 인식해서 링크시켜주는겁니다.
즐린
원래는 gcc 에서 dll 을 링크하기 위해서는
임포트 라이브러리가 필요했던 것으로 아는데,,,
지금도 구글링 해보면 임포트 라이브러리가 필요한 것처럼 보입니다.
그런데 되니까 좀 이상해서요..
제 잘못인지 모르겠지만, dll 두개에 대해서 링크하니까 잘 안되기도 하고...
혹시 무슨 이유인지 아시나요??
즐겁게 살아 볼까나~*
그리고 cygwin-gcc로 만든 dll은 확실히 바로 링크되는데 mingw나 vc로 만든 dll은 링크가 안될수도 있습니다. 즐린
그럼 .dll 에 있는 symbol 들을 리스트해 볼수 있는 툴 없나요? gui 로 된??
IDA PRO 같은걸로 찍어보면 쭉 뽑을 수 있습니다.
DLL에 있는 심볼과 인자의 개수까지 뽑아낼 수 있습니다.
------------------------------------- 김동수 - Prototype for Evolution
김동수 - Prototype for Evolution
IDA PRO 이 프로그램 뭔가요?
설치하고 실행해서 DLL 분석해보니.. 프로그램이 정말 잘 만들어져 있네요.
왜 이런 프로그램이 있는지도 몰랐는지..
근데, 이 프로그램 주 용도가 뭔가요? 사실 disassemble 을 해서 얻을수 있는건 별로 없을 것 같은데..
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
예! 정상입니다
정확히 말하면 qt-creator가 하는게 아니고
gcc의 링커가 dll을 인식해서 링크시켜주는겁니다.
즐린
즐린
원래는 필요하지 않았나요?
원래는 gcc 에서 dll 을 링크하기 위해서는
임포트 라이브러리가 필요했던 것으로 아는데,,,
지금도 구글링 해보면 임포트 라이브러리가 필요한 것처럼 보입니다.
그런데 되니까 좀 이상해서요..
제 잘못인지 모르겠지만, dll 두개에 대해서 링크하니까 잘 안되기도 하고...
혹시 무슨 이유인지 아시나요??
즐겁게 살아 볼까나~*
아마 cygwin에서 제공하는 gcc에서는 dll바로 링크되는거로 압니다.
그리고 cygwin-gcc로 만든 dll은 확실히 바로 링크되는데
mingw나 vc로 만든 dll은 링크가 안될수도 있습니다.
즐린
즐린
음...
그럼 .dll 에 있는 symbol 들을 리스트해 볼수 있는 툴 없나요? gui 로 된??
즐겁게 살아 볼까나~*
IDA PRO 같은걸로
IDA PRO 같은걸로 찍어보면 쭉 뽑을 수 있습니다.
DLL에 있는 심볼과 인자의 개수까지 뽑아낼 수 있습니다.
-------------------------------------
김동수 - Prototype for Evolution
김동수 - Prototype for Evolution
ㄷㄷ
IDA PRO 이 프로그램 뭔가요?
설치하고 실행해서 DLL 분석해보니.. 프로그램이 정말 잘 만들어져 있네요.
왜 이런 프로그램이 있는지도 몰랐는지..
근데, 이 프로그램 주 용도가 뭔가요? 사실 disassemble 을 해서 얻을수 있는건 별로 없을 것 같은데..
즐겁게 살아 볼까나~*
댓글 달기