CMakeの - 4月などの外部ライブラリを使用して

インドは質問をします:

私はこのCMakeのに非常に新しいです。

私は、Apache 2から4月を使用する必要があると私は、このビルドシステムに問題があります。Apache 2のウェブサーバを下にインストールされているC:\ Apache24のフォルダに、4月には、ファイルが下に配置されているが含ま関連C:\ Apache24には、\と下のライブラリC:\ Apache24 \ libにフォルダを。

cmake_minimum_required(VERSION 3.15)
project(json C)
set(CMAKE_C_STANDARD 90)
include_directories(
    C:\Apache24\include
)
link_directories(
    C:\Apache24\lib
)
target_link_libraries(
    json apr-1.lib
)
add_executable(larak larak.h larak.c main.c)

ビルドによって私はこのエラーを取得します:

Cannot specify link libraries for target "larak" which is not built by this project.

私はすでに同様の記事をたくさん読んだが、ほとんどは、それらのすべては、Linux / Unixシステムのためではなく、4月/ ApacheのWindowsとではないためです。

squareskittles:

target_link_libraries()リンクへのコマンド指定のライブラリの特定のターゲット。このターゲット名はとして提供されなければならない最初のコマンドの引数、およびすでにCMakeのファイルで先に定義する必要があります。あなたが唯一の目標を持っているので、larakあなたのCMakeのファイルで定義されて、あなたはおそらくこのような何かをしたいです:

cmake_minimum_required(VERSION 3.15)
project(json C)
set(CMAKE_C_STANDARD 90)
include_directories(
    C:/Apache24/include
)
link_directories(
    C:/Apache24/lib
)

add_executable(larak larak.h larak.c main.c)

target_link_libraries(larak PRIVATE
    apr-1.lib
)

慎重に、CMakeのは、おそらく(バックスラッシュの使用状況に文句を言うだろう\、あなたは持っています)。あなたはスラッシュにこれらを変換する必要があります。

注意は、あなたが代わりにライブラリへの完全なパスを指定することもできるtarget_link_libraries()の使用を避けるために、コマンドlink_directories()のコマンドを。

cmake_minimum_required(VERSION 3.15)
project(json C)
set(CMAKE_C_STANDARD 90)
include_directories(
    C:/Apache24/include
) 
add_executable(larak larak.h larak.c main.c)

target_link_libraries(larak PRIVATE
    C:/Apache24/lib/apr-1.lib
)

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=377270&siteId=1