1 つの外部モジュールを使用して Fortran プロジェクトの cmake リストを作成しようとしていますが、どちらも cmake find (findlib) パッケージを持たない外部ライブラリにリンクする必要があります。これまでのところ、私の CMakeLists.txt は次のようになっています。
cmake_minimum_required (VERSION 2.6)
project (Project 1)
enable_language (C Fortran)
set(extern_INCLUDE /home/path/lib/libdir/include/)
set(extern_LIB /home/path/lib/libdir/lib)
include_directories(${extern_INCLUDE})
link_directories (${extern_LIB})
add_library(mymodule STATIC mymodule.f90)
set(main-source_SRC main-source.f)
add_executable(main-source ${main-source_SRC})
#the name of the external library located in /home/path/lib/libdir/lib is libexternlib.so
target_link_libraries(main-source mymodule externlib)
libmymodule.a が作成されますが、これは絶対に必要ではありません (つまり、共有されているものでもありません)。私はそれらを生成したくありません。その生成を回避し、mymodule をコンパイルして .o および .mod を生成し、メイン プログラムおよび外部ライブラリとリンクできるようにするにはどうすればよいですか? これに相当するのは、mymodule に対して ifort -c を実行し、すべての .o に対して ifort を実行することです。