如何调试“链接命令失败”?

时间:2020-06-13 10:39:36

标签: c++ gcc linker

我已经开始通过其他一些高级语言学习C ++,这开始让我发疯。

当我编译这样的程序时:

/Applications/CLion.app/Contents/bin/cmake/mac/bin/cmake --build /Users/username/studies/cmake-build-debug --target simple_example -- -j 4

一切正常。 CLion带有自己的cmake,因此它执行以下命令,该命令也有效:

  gcc -O2 -static -v $FILE_TO_COMPILE -o $OUTPUT

但是当我这样编译时:

ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我得到很多冗长的输出,最终以:

def yes_or_no(question):
    answer = input(question).lower().strip()
    print("")
    while not(answer == "y" or answer == "yes" or \
    answer == "n" or answer == "no"):
        print("\nSorry, only Y or N please.")
        answer = input(question).lower().strip()
        print("")
        print(answer)
    if answer == 'y' or answer == 'yes':
        answer = True
    else:
        answer = False

好的,从冗长的角度我可以理解,我没有附加适当的库来进行编译,但是我很想调试代码的哪一部分使用了该库。这是重现该问题的代码的要点: https://gist.github.com/Dominos/226b651a508cb48ce7272f7dd3e447e2

谁能告诉我调试此类问题的正确方法是什么?我不需要答案出什么问题,我希望如何找出这个问题。

0 个答案:

没有答案