본문 바로가기

그냥 블로그

DLL 만들기 작업 시 undefined reference 오류 대응

반응형

DLL 만들기 작업에서 아래와 같은 오류가 발생하는 경우 대처법? 입니다. DLL 만드는 작업은 아래를 참고했구요.

https://mamma.tistory.com/32

 

gcc환경에서 윈도우용 Dll만들기

DLL은 Dynamic Linking Library에서 첫글자만을 모아서 만든 단어입니다. '동적 연결 라이브러리'라고 부르는데, 기존의 라이브러리가 코드를 작성 당시에 링크된다면, 이것은 실행될때 그 코드들이 링크되는 방식..

mamma.tistory.com

gcc 대신 mingw 에서 g++.exe 파일을 사용했습니다.

C:\mingw-w64\mingw64\bin\g++.exe Test.o -o Test.dll -mwindows -Wall -L. -lTest -shared

Test.o:Test.cpp:(.text+0x588): undefined reference to `__imp_SysAllocStringLen'
Test.o:Test.cpp:(.text+0x616): undefined reference to `__imp_SysFreeString'
collect2.exe: error: ld returned 1 exit status
The terminal process terminated with exit code: 1

음. 뭐가 오류였는지, 정확하지 않은데, 해결책 중 하나는 MS C++을 사용하라는 건데, 뭔가 그렇게 하기에는 찜찜해서 다른 자료를 찾아보니, 그냥 옵션만 추가해주면 된다고 하네요.

C:\mingw-w64\mingw64\bin\g++.exe Test.o -o Test.dll -mwindows -lole32 -loleaut32 -Wall -L. -lTest -shared

정말 기존 코드에서 -lole32 -loleaut32 두 개 옵션만 추가해주었는데, 문제가 해결되었습니다.

https://bugreports.qt.io/browse/QTIFW-1014?focusedCommentId=378341

 

[QTIFW-1014] 'unresolved external symbol' errors for builds on Windows - Qt Bug Tracker

No reviews matched the request. Check your Options in the drop-down menu of this sections header.

bugreports.qt.io

https://github.com/andlabs/ui/issues/326

 

Linker error when compiling to Windows when importing github.com/andlabs/ui · Issue #326 · andlabs/ui

I'm importing this package alongside https://github.com/veandco/go-sdl2 and I get this error when cross-compiling to Windows using mingw: /usr/lib/go/pkg/tool/linux_amd64/link: running x86_64-w...

github.com

https://github.com/veandco/go-sdl2/issues/362

 

Linker error when compiling to Windows when importing github.com/andlabs/ui · Issue #362 · veandco/go-sdl2

I'm importing this package alongside github.com/andlabs/ui and I get this error when cross-compiling to Windows using mingw: /usr/lib/go/pkg/tool/linux_amd64/link: running x86_64-w64-mingw32-g+...

github.com

이슈로 올라온 것들을 보면 그때그때 안 되는 이유들이 달라서, 이게 정답이라고 하기에는 애매합니다만 일단 DLL 파일은 만들어졌으니 ㅠㅠ

 

* 아, 이런 문서가 있었는데 이제야 ㅠㅠ

http://www.mingw.org/wiki/sampleDLL

 

HOWTO Create and Deploy a Sample DLL using MinGW | MinGW

 

www.mingw.org

 

728x90