0

我使用名为 Nomad 3.8.1 的 Open Solver 开源软件。我用 g++ 安装了 MinGw,用 nmake 安装了 Visual Basic

我有几个目录(软件/源代码的构建等)在提供的示例中有两个文件(basic_lib.cpp 用于计算和 Makefile)

但是,在我看到的文档中,makefile 是针对 Linux 的(我使用的是 Windows)

所以我更新了makefile

EXE                    = basic_lib.exe

COMPILATOR             = g++

COMPILATOR_OPTIONS     = -O2 -ansi 


LIB_DIR                = C:/Users/***/Documents/nomad.3.8.1/lib
LIB_NOMAD              = libnomad.so 

CXXFLAGS               =           

CXXFLAGS_MPI           = $(CXXFLAGS) -DUSE_MPI


LDLIBS                 = -lm -lnomad

INCLUDE                = -IC:/Users/***/Documents/nomad.3.8.1/src -IC:/Users/***/Documents/nomad.3.8.1/ext/sgtelib/src -I.

COMPILE                = $(COMPILATOR) $(COMPILATOR_OPTIONS) $(INCLUDE) -c
COMPILE_MPI            = $(COMPILATOR_MPI) $(COMPILATOR_OPTIONS_MPI) $(INCLUDE) -c

OBJS                   = basic_lib.o




$(EXE): $(OBJS)
    $(ECHO_NOMAD)
    @echo "   building the scalar version ..."
    @echo "   exe file : "$(EXE)
    @$(COMPILATOR) -o $(EXE) $(OBJS) $(LDLIBS) $(CXXFLAGS) -L$(LIB_DIR) 

basic_lib.o: basic_lib.cpp
    $(ECHO_NOMAD)
    @$(COMPILE) basic_lib.cpp

目录 src 包含 .cpp 和 .hpp

当我用 Visual Basic 运行 nmake 时,我得到错误 ld.exe: cannot find -lnomad collect2: ld returned 1 exit status

你可以帮帮我吗 ?(我不知道什么可以游牧......)

4

0 回答 0