【问题标题】:Getting error while linking with g++与 g++ 链接时出错
【发布时间】:2010-04-20 14:22:22
【问题描述】:

我尝试分两步编译和链接我的应用程序:

编译:

g++ -c -o file1.o file1.cc general_header.h
g++ -c -o file2.o file2.cc general_header.h
g++ -c -o file3.o file3.cc general_header.h

链接:

g++ -o myApp file1.o file2.o file3.o

我收到如下链接错误:

file1.o:文件无法识别:文件格式无法识别
collect2: ld 返回 1 个退出状态

我做错了吗?

谢谢

【问题讨论】:

    标签: c++ linux g++ linker compilation


    【解决方案1】:

    您不应该在命令行中提及您的头文件 - 您不想直接编译它,而只是因为它包含在您的源文件中。另外,我会让编译器命名目标文件,因为在显式执行此操作时很容易打错字。所以你的编译命令应该是这样的:

    g++ -c file1.cc 
    

    然后你也可以说:

    g++ -c file1.cc file2.cc file3.cc
    

    【讨论】:

      【解决方案2】:

      无需在输入文件列表中包含头文件

      g++ -c -o file1.o file1.cc

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-28
        • 2012-06-20
        • 1970-01-01
        • 2018-04-13
        相关资源
        最近更新 更多