【问题标题】:Using CImg: LNK1181: cannot open file "m.lib" on windows 7 x64使用 CImg:LNK1181:无法在 Windows 7 x64 上打开文件“m.lib”
【发布时间】:2013-03-05 07:50:29
【问题描述】:

在 CImg Makefile 中,我注意到一个标志“-lm”,我认为它指向 m.lib 文件。但由于某种原因,它在链接阶段找不到它。我正在使用以下命令编译代码:

nvcc -o FilledTriangles FilledTriangles.cu -I.. -O2 -lm -lgdi32

"nvcc" 只是 nvidia CUDA 编译器。它的功能应该类似于 g++

【问题讨论】:

    标签: c++ compilation linker-errors nvcc cimg


    【解决方案1】:

    -lm 指“libm.so”

    一般来说,-lXYZ 是一种告诉链接器它应该针对 libXYZ.so 解析编译代码中的符号的方式(在找到它之后,通常在 /usr/lib 中)。

    【讨论】:

    • 可能也值得寻找libm.a
    • 这并不能解决问题。 “nvcc”似乎正在寻找另一个文件。你如何让 nvcc 寻找正确的文件? OP的问题在标题中。如果您将此添加到您的答案中,我会支持您
    猜你喜欢
    • 2013-10-20
    • 2016-07-07
    • 2014-01-05
    • 2015-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-26
    相关资源
    最近更新 更多