MVCP100D.dll 在 Eclipse 中由 C++ 代码生成的 运行 exe 文件时丢失

MVCP100D.dll missing when running exe file generated by C++ code in Eclipse

我正在尝试整合 AMPL with C/C++ using AMPL-API。我在 Eclipse 中创建了一个 Makefile 项目,它使用 MinGW CC 来编译代码。

Here is my C++ code:

#include <iostream>
#include "ampl/ampl.h"

using namespace std;

int main() {
    ampl::AMPL ampl;

    // Read the model and data files.
    std::string modelDirectory = "models";
    ampl.read(modelDirectory + "/diet/diet.mod");
    ampl.readData(modelDirectory + "/diet/diet.dat");

    // Solve
    ampl.solve();

    // Get objective entity by AMPL name
    ampl::Objective totalcost = ampl.getObjective("total_cost");
    // Print it
    std::cout << "Objective is: " << totalcost.value() << std::endl;
}

Following is my Makefile:

CC = g++
CFLAGS = -O2 -g -Wall -fmessage-length=0
INCLUDES = -I "C:\Local\AMPL\amplide.mswin32\amplide.mswin32\amplapi\include"
OBJS = AMPL.o
LIBS =  -lampl1.2.2 
TARGET = AMPL.exe
$(TARGET):  $(OBJS)
    $(CC) -L "./" -o $(TARGET) $(OBJS) $(LIBS)
AMPL.o: AMPL.cpp
    $(CC) $(CFLAGS) $(INCLUDES) -c AMPL.cpp
all:    $(TARGET)
clean:
    rm -f $(OBJS) $(TARGET)

Contents of my project directory are:

我有一台 32 位 Windows 7 机器,上面安装了 Eclipse Mars 2.0 和 Visual Studio 2015。每当我 运行 exe 文件时,它都会说缺少 MVCP100D.dll。我在网上查看,发现此错误通常在缺少 Visual C++ Redistributable 时出现。但是我的系统上安装了可再发行组件。请帮我解决这个问题。

更新: 我试图在 Visual Studio 2015 年执行相同的代码并且它也能够编译,但是,我无法 运行 *.exe文件。它还说缺少 MVCP100D.dll。我不确定为什么会出现此错误,请帮助!!

更新: 下载更新版本适用于 Visual Studio 2015,但面临其他 post 中指定的单独问题:Undefined reference to (error) in C++ Eclipse but working in Visual Studio 2015

这是包含这些 DLL 的 AMPL C++ API. As a quick fix, the updated distribution available for download from http://ampl.com/products/api 测试版中的错误。下一个更正版本中将提供永久修复。