sách gpt4 ai đã đi

c++ - 制作。异常行为

In lại 作者:行者123 更新时间:2023-11-28 02:06:10 28 4
mua khóa gpt4 Nike

让我们考虑两个简化的 CMakeLists.txt

set(GTEST "/usr/local/lib/libgtest.a")
set(GMOCK "/usr/local/lib/libgmock.a")
...
target_link_libraries(project ${GTEST} ${GMOCK})

Khi tôi cmake Sau đó làm 它工作。但是,以下内容不起作用:

set(GTEST "/usr/local/lib/libgtest.a /usr/local/lib/libgmock.a")
...
target_link_libraries(project ${GTEST})

当我输入 cmake 时,它工作正常。但是当我把 make 它给了我:

make[3]: *** There is no rule for '/usr/local/lib/libgtest.a /usr/local/lib/libgmock.a'

Tại sao?

1 Câu trả lời

这两个例子不是一个意思。第一个示例将两个库传递给 target_link_libraries。第二个传递一个库名称,其中包含两个空格。如果你想在一个变量中传递两个库,使用

set(GTEST "/usr/local/lib/libgtest.a" "/usr/local/lib/libgmock.a")

至于为什么失败是一条如此奇怪的消息,我怀疑 CMake 部分缺少转义(尽管您的路径会有一个带有尾随空格的目录名称,这在实践中可能不会发生)。

关于c++ - 制作。异常行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37351173/

28 4 0
Bài viết được đề xuất: HTML/CSS 标题格式问题
Bài viết được đề xuất: android - 如何在 Superpowered SDK 中并行应用过滤器
Bài viết được đề xuất: c++ - 合并排序程序总是有效,但有时会在最后说 abort trap
Bài viết được đề xuất: c++ - 在 C++ 中抛出原始类型
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com