我发现了一个用于matlab的基于Java的TCP-IP系统,该系统可能解决了我在使用多个不间断连接时遇到的许多问题。但是,我对如何使其工作感到困惑。我已经在Linux下多次编译代码,但从未在Windows上编译过。
我要编译的代码位于here中,它指出:
构建
通过随附的Makefile编译MEX文件和Java帮助程序。
make
问题是如何?我想到使用Visual Studio命令提示符,但最终出现错误:
makefile(8):致命错误U1036:语法错误:'='左边的名称过多
哪个建议我必须编辑makefile或我使用了错误的编译器。而且我不懂Java,所以我什至都不知道从哪里开始编译。
编辑:更新以显示Makefile中的代码
MATLABDIR ?= /usr/local/matlab
MATLAB := $(MATLABDIR)/bin/matlab
MEX := $(MATLABDIR)/bin/mex
MEXEXT := $(shell $(MATLABDIR)/bin/mexext)
MEXSOURCES := $(wildcard private/*.cc)
MEXTARGETS := $(patsubst %.cc,%.$(MEXEXT),$(MEXSOURCES))
CLASSPATH := java
JAVASOURCES := $(wildcard java/matlab_tcpip/*.java)
JAVATARGETS = $(patsubst %.java,%.class,$(JAVASOURCES))
JARFILE = java/matlab_tcpip.jar
all: $(JARFILE) $(MEXTARGETS)
%.$(MEXEXT):%.cc
$(MEX) $< -output $@
$(JARFILE): $(JAVATARGETS)
jar cvf $@ -C java matlab_tcpip/
jar i $@
%.class:%.java
javac -cp $(CLASSPATH) $<
test: $(JARFILE)
echo "run test/runServer.m" | $(MATLAB) -nodisplay & \
echo "run test/runClient.m" | $(MATLAB) -nodisplay
clean:
rm $(MEXTARGETS) java/matlab_tcpip/*.class $(JARFILE)