将来Rと統合できるライブラリを作成しようとしていますが、コマンドラインでも使用できます
パスの最初のステップは、.a または .so のいずれかのライブラリを作成することです
これは私のメイクファイルです。正常にコンパイルされますが、フォルダーを見ると空です (つまり、wilxtest.cpp で使用できません)。
EXTERNALLIBS = -lnetcdf_c++ -lgsl -lgslcblas
WILXAPP = src/wilxtest.cpp
CXX = g++
CXXFLAGS = -Wall -ggdb
LIBOBJS: src/wilcoxonParallelTests.o
LIBRARY: lib/WilcoxonParallelTests.a
$(LIBRARY): $(LIBOBJS)
    $(CXX) $(CXXFLAGS) ar cr $(LIBRARY) $(LIBOBJS) $(EXTERNALLIBS)
bin/Debug/WilxAstakTest: $(WILXAPP)
    $(CXX) $(CXXFLAGS) -o $@ $^ $(EXTERNALLIBS)
Debug: $(LIBRARY) bin/Debug/WilxAstakTest
MkDirs:
    mkdir -p obj
    mkdir -p lib
    mkdir -p bin/Debug
cleanDebug:
    rm -rf obj/*
    rm -rf lib/*
    rm -rf bin/Debug/*
編集:
LIBOBJS と LIBRARY の後に「=」ではなく「:」を付けました。オブジェクトファイルを作成するターゲットもありませんでした。更新されたバージョンは次のとおりです。
EXTERNALLIBS = -lnetcdf_c++ -lgsl -lgslcblas
WILXAPP = src/wilxtest.cpp
CXX = g++
CXXFLAGS = -Wall -ggdb
LIBCPP = src/wilcoxonParallelTests.cpp
LIBOBJS = obj/wilcoxonParallelTests.o
LIBRARY = lib/WilcoxonParallelTests.a
$(LIBOBJS): $(LIBCPP)
    $(CXX) $(CXXFLAGS) -c $(LIBCPP) -o $(LIBOBJS)
$(LIBRARY): $(LIBOBJS)
    ar -cr $(LIBRARY) $(LIBOBJS)
bin/Debug/WilxAstakTest: $(WILXAPP) $(LIBRARY)
    $(CXX) $(CXXFLAGS) -o $@ $^ $(EXTERNALLIBS)
Debug: $(LIBRARY) bin/Debug/WilxAstakTest
MkDirs:
    mkdir -p obj
    mkdir -p lib
    mkdir -p bin/Debug
cleanDebug:
    rm -rf obj/*
    rm -rf lib/*
    rm -rf bin/Debug/*