OpenGL과 몇 가지 다른 기본 라이브러리 (Derelict 라이브러리 사용)와의 인터페이스 인 D에서 응용 프로그램을 작성하고 있습니다. 그러나이 오류는 전혀 관련이없는 것처럼 보입니다. 나는 "더빙 빌드를"할 때마다링커 오류 : 'internal'에 대한 정의되지 않은 참조
컴파일은 성공하지만 신분증이 메시지와 함께 실패합니다
Linking...
../git/mango-engine/bin/libmango-engine.a(gl_model_503_284.o):(.data._D12mango_engine8graphics6opengl8gl_model7GLModel6__initZ+0x10): undefined reference to `internal'
../git/mango-engine/bin/libmango-engine.a(shader_51b_52f.o): (.data._D12mango_engine8graphics6shader13ShaderProgram6__initZ+0x18): undefined reference to `internal'
collect2: error: ld returned 1 exit status
나는 이것이 무엇을 의미하는지 아무 생각이 없다, 그리고 그것을 전에 본 적이 없다. 또한, 이상하게도 특정 파일을 가져올 때만이 오류가 발생합니다 : gl_model.d 및 shader.d, 다른 DUB 프로젝트에서. 가져 오지 않으면 링커가 성공합니다.
내가 제공하는 정보가 무엇인지 확실하지 않다, 그래서 전체 소스 코드를 here.
편집기를 링크 단지 것 : x86_64에 대해 컴파일 할 때이 오류가 발생합니다. x86이 정상적으로 작동합니다.
'extern (C) void internal()'또는 선언되지 않았지만 정의되지 않은 것과 같은 함수 또는 변수가있을 수 있습니다. 'mango_engine.graphics' 모듈은 코드입니까, 라이브러리입니까? –
@ AdamD.Ruppe 전체 프로젝트에서 하나의 extern 문만 있고 구현이 있습니다. 그것은 또한 "내부"근처에 이름이 없습니다. – jython234