2011. 4. 30. 19:54


오늘.. Boland에서 OpenMP 라이브러리를 사용하기 위해 부단한 노력을 해지만 결국 실패 했다.
그래서 하나 생각해낸 꼼수가 Visual Studio에서 OpenMP 라이브러리를 사용하는 dll을 만들어 그 dll을 Boland에서 사용하게 끔 하는 생각을 했다.

오 ㅋㅋ 시발 존나.. 오랜만에 Visual Studio.. 오 시발 ㅋㅋ 존나 기억이 안난다.
인터넷 존나 뒤져서 dll 만드는 법 찾아서 dll을 생성하는데 오~~ 시발~~ 컴파일은 잘 되는데 dll 파일이 없어..
알고 봤더니 final output 설정이 내가 찾아본 경로와 달랐다는 사실을 알게 됬다.. 오.. 시발 이짓꺼리로 거의 2시간 노가다..

어쨋든 만든 라이브러리 Visual Studio에서 실행해 보니 오~~ 시발 아주 좋아 잘 되..
그럼 이제 이걸 C++ Builder 2010에서 불러 보자!

오 시발.. 잘 되.. ㅋㅋ 근데 니미 뭐지?



int main()
{
           ....어쩌구저쩌구
} << 여기서 에러가 난다.

와나 시발 ㅋㅋ 이게 뭐냐고.. 존나 개삽질 시발 미친 존나 ㅋㅋㅋㅋ ㅇ미ㅏ러80ㅕ라ㅣㅓ나ㅓㅇ라란ㄹ
약 4시간 동안 존나 삽질하다가 Visual Studio에서도 dll로 불러와서 해보자는 생각에.. 그대로 해봤다.


오 시발 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 찾았다!! 니미랄 존나 원인 찾았다!!!

호출규약이 달라서.. ㅋㅋㅋㅋㅋ

조촐하게 __stdcall을 __cdecl로 바꿧더니 끝!
존나 잘돌아가네 ㅋㅋㅋ


아래 그림은 C++ Builder 2010에서 OpenMP 사용하는 dll 맨들어서 로딩한담에 테스트 프로그램에서 함수 호출한다음 스레드 개수 확인한거.. C++ Builder에서도 OpenMP를 사용하다. ㅋㅋ 역시 난 천재인가?



여튼 시발 오늘 존나 삽질했네 ㅋㅋㅋㅋㅋ


Posted by 뿌직