我正在嘗試使用projAPI(http://trac.osgeo.org/proj/wiki/ProjAPI)來計算投影。可悲的是,文件是......好......不是那麼好。另外,我在C++編程方面並不擅長。 VisualStudio中的項目設置是一些火箭科學。反正,設置如下:projAPI(GIS庫)堆溢出
- VC++目錄=>包含目錄=>添加的包括的lib
- VC的DIR ++目錄=>庫目錄=>添加的lib目錄,包含的.lib 文件
- Linker => Input => Addit。依賴=>添加 「proj.lib」 和 「proj_i.lib」
項目包含用於測試目的一個CPP:
#include "../include/proj_api.h"
int main(int argc, char** argv){
projPJ projection;
projection = pj_init_plus("+proj=merc +ellps=clrk66 +lat_ts=33");
}
...編譯就像一個魅力...
當即將pj_init_plus
,它崩潰:
Debug Assertion Failed!
Program: ...cuments\visual studio 2012\Projects\testLib\Debug\testLib.exe
File: f:\dd\vctools\crt_bld\self_x86\crt\src\dbgheap.c
Line: 1322
Expression: _CrtIsValidHeapPointer(pUserData)
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
無視帶來了第二個錯誤:
Debug Assertion Failed!
Program: ...cuments\visual studio 2012\Projects\testLib\Debug\testLib.exe
File: f:\dd\vctools\crt_bld\self_x86\crt\src\dbgheap.c
Line: 1328
Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse)
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
...主要問題是:哪裏是錯誤?我編譯圖書館失敗了嗎? 或我做錯了我的項目設置?
編譯庫:
=>運行VCVARS32.BAT從Visual Studio中的樹,然後
$cd to the downloaded directory
$nmake /f makefile.vc
$nmake /f makefile.vc install-all
檢查C:\ PROJ目錄:一切在那裏,將lib和include目錄複製到我的項目中並嘗試使用它。
應該已經回答了我自己,但問題在釋放模式明顯消失... –