Visual Studio 2013로 .dll을 만들려고합니다.이 프로젝트에는 libpq 기능이 포함되어 있습니다.Visual Studio 2013에서 libpq 사용, DLL로 컴파일
내가 인터넷에서 발견 한 다른 소스 오버 플로우 플로우마다, 나는 (나는 알고있는 한) postgres 라이브러리를 올바르게 추가하고 프로젝트에 디렉토리를 포함시켰다. 그러나 프로젝트를 빌드 할 때 여러 "확인되지 않은 외부 기호"오류가 반환됩니다.
내 경로는 C:\Program Files\PostresSQL\9.3\...
이므로 추가 라이브러리/디렉토리 필드에 따옴표로 묶습니다. 프로젝트에 libpq-fe.h
헤더 파일을 포함 시켰습니다 ... 내가 잘못하고있는 것이 확실하지 않습니다.
또 다른 참고 사항으로 g ++을 -I, -L 및 -lpq 플래그와 함께 사용하여 명령 줄에서 테스트 프로그램을 컴파일 할 수 있지만 명령 줄에서 .dll을 컴파일하는 방법을 모르겠습니다. 더하기 그것은 내가 다루고 싶지 않은 복잡성을 더 해줍니다.)
이
내가지고있어 특정 오류가 있습니다 :1>sql_arma.obj : error LNK2001: unresolved external symbol _PQconnectdb
1>sql_arma.obj : error LNK2001: unresolved external symbol _PQstatus
1>sql_arma.obj : error LNK2001: unresolved external symbol _PQerrorMessage
1>sql_arma.obj : error LNK2001: unresolved external symbol _PQfinish
1>C:\Users\tills13\documents\visual studio 2013\Projects\sql_arma\Release\sql_arma.dll : fatal error LNK1120: 4 unresolved externals
아래 제안 나는,이, 내 프로젝트의 소스 파일에 #pragma comment(lib, "libpq.lib")
포함, 난 아직도 이러한 오류를받을 수 있습니다.
컴파일, 나는 당신이 그 상징을 수출하기로 생각합니다. 어쩌면이 당신에게 도움이 될 수 더 : [1] http://msdn.microsoft.com/en-us/library/z4zxe9k8.aspx [2] http://stackoverflow.com/questions/225432/export -all-symbols-dll을 만들 때 [3] http://msdn.microsoft.com/en-us/library/a90k134d.aspx – hbobenicio
내 코드에 필요한 기호를 내보내는 중입니다. . 내 문제는 libpq에서 정의되지 않은 기호입니다. –
연결 구성은 어떻게됩니까? 올바른 .lib 파일과 연결하고 있습니까? 여기에있는 바보 같은 질문 : 해결되지 않은 외부 기호는 libpq의 기호입니다. – hbobenicio