2
2つのソースファイルA
とB
があるとしましょう。それぞれには、メインとパブリックの機能があります。複数のメインと共有関数を持つCMakeコンパイルプロジェクト
A B
|__ main() |__ main()
|__ foo() |__ bar()
私はbar
方法がfoo
機能を使用します。これをCMakeプロジェクトでどのようにコンパイルできますか?
この設定では、B
は、A
のfoo
機能をよく知りません。
cmake_minimum_required(VERSION 3.5)
project(My_project)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O3")
add_executable(A A.cpp)
add_executable(B B.cpp)
この構成では、両方とも、main
の定義があります。
cmake_minimum_required(VERSION 3.5)
project(My_project)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O3")
set(SOURCE_FILES A.cpp)
add_library(A_lib STATIC ${SOURCE_FILES})
add_executable(A A.cpp)
add_executable(B B.cpp)
target_link_libraries(B A_lib)
私が欲しいものを達成する方法はありますか?両方のメインを組み合わせたり、foo
とA main
を別々のファイルに分けてはいけません。たぶんC++ヘッダーを使用していますか?