簡體   English   中英

Visual C ++ 2015中的CSpice:鏈接錯誤

[英]CSpice in Visual C++ 2015: Link errors

我正在嘗試使用Nasa的CSpice工具包,但是當我嘗試構建代碼時,會收到類似

LNK2028 unresolved token (0A0004E6) "extern "C" void __cdecl spkpos_c(char const *,double,char const *,char const *,char const *,double * const,double *)"

我已經將庫(cspice.lib)放在鏈接器的“ 項目屬性”頁面中,並導入了標頭。
關於這個問題可能有什么想法?

碼:

#include <iostream>
#include "stdafx.h"
#include "Calculation.h"
#include <ctime>
#include <string>
#include <sstream>

SpiceDouble* Calculation::sunPosition()
{   
//--Kernels--
//Load Earth data
furnsh_c("..\data\earth_pck\earth_latest_high_precision.bpc");
//Load LeapSeconds tabulation for time convertion
furnsh_c("..\data\all_spk\naif0011.tls.pc");
//Framework used is J2000, so it does not need to be loaded


//--Variables--
SpiceDouble epochTime;
SpiceDouble sunPosition[3];
SpiceDouble lightYears;

//--Calculation--
//Seconds past J2000 TDB
time_t t = time(0);
struct tm* utcNow = gmtime(&t);
std::string month;
switch (utcNow->tm_mon)
{
case 0:
    month = "JAN";
    break;
case 1:
    month = "FEB";
    break;
case 2:
    month = "MAR";
    break;
case 3:
    month = "APR";
    break;
case 4:
    month = "MAY";
    break;
case 5:
    month = "JUN";
    break;
case 6:
    month = "JUL";
    break;
case 7:
    month = "AUG";
    break;
case 8:
    month = "SEP";
    break;
case 9:
    month = "OCT";
    break;
case 10:
    month = "NOV";
    break;
case 11:
    month = "DEC";
    break;
}

std::stringstream format;
format << (utcNow->tm_year + 1900) << " ";
format << month << " " << utcNow->tm_mday << " ";
format << utcNow->tm_hour << ":";
format << utcNow->tm_min << ":";
format << utcNow->tm_sec;

ConstSpiceChar* et = format.str().c_str();
str2et_c(et, &epochTime);

//Get current sun position relative to earth, using earth as the inertia center
spkpos_c("sun", epochTime, "iau_earth", "none", "earth", sunPosition, &lightYears);
printf("%f", sunPosition);

return sunPosition;
}

解決了。

解決方案:庫是x64,為x86配置了Visual C ++。 ->在cmd中運行“ vcvarsall.bat amd64”,並將項目更改為構建x64

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM