私はC/C++プロジェクトに取り組んでおり、ビルドにはCMAKE 3.5.2を使用しています。しかし、今はOctave関数を使用するC++ファイルをインクルードする必要があります。このコマンドを使用して、このソースファイルをラインコマンドで直接コンパイルすることができます:mkoctfile --link-stand-alone new_oct_file -o final_library
。CMAKEとMKOCTFILE
私はCMAKEを実行するのに苦労しています、このコマンドを実行します。 add_custom_command
を使用しようとしましたが、動作しませんでした。何か助けてくれますか?
私CMAKEは、私は、次のコマンドを追加しようとしました
cmake_minimum_required(VERSION 2.8)
project(final_library)
add_executable(final_library program.c
./Commons/util.c
./Tools/xulambs_tool.cpp)
find_package(Boost REQUIRED)
include_directories(${Boost_INCLUDE_DIR})
include_directories(/usr/include/octave-4.0.0/octave)
install(TARGETS final-library RUNTIME DESTINATION bin)
add_subdirectory(Commons)
add_subdirectory(Tools)
次のような構造を持っている(それは動作しません):
はset(MKOCTFILE "mkoctfile")
set(OCTARG "--link-stand-alone")
add_custom_command(TARGET reordering-library
PRE_LINK
COMMAND ${MKOCTFILE} ARGS ${OCTARG} ./Tools/tool_octave.cpp)
コンパイル出力は
[ 4%] Linking CXX executable final-library
g++: error: ./Tools/tool_octave.cpp: No such file or directory
g++: fatal error: no input files
compilation terminated.
CMakeFiles/final-library.dir/build.make:694: recipe for target 'final-library' failed
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/final-library.dir/all' failed
Makefile:127: recipe for target 'all' failed
make[2]: *** [final-library] Error 1
make[1]: *** [CMakeFiles/final-library.dir/all] Error 2
make: *** [all] Error 2
です
ありがとうございます。
この
add_executable(MyEXEのmain.cc):
私の現在のcmakeのファイルには、次が含まれています/v3.0/prop_sf/GENERATED.html助けてください –