【问题标题】:Is there any way is ther to create a ".O" file without main() function in ".C" file有没有办法在“.C”文件中创建一个没有 main() 函数的“.O”文件
【发布时间】:2011-09-25 16:16:12
【问题描述】:

在 Linux 中:C++

有没有办法在“.C”文件中创建一个没有main()函数的“.O”文件。

我正在使用

     "cc -c file.c -o file.o  " with sun compiler  
     " gcc -Wall -c file.c " with g++ compiler

我可以知道

1) EDG 编译器和 LINUX 中的任何其他 C++ 编译器需要使用什么命令

2) 在 Windows 中,我可以知道任何编译器..甚至 g++、cc、intel 等...吗?

请...

我看过这个问题?

Possible to compile any .c file in isolation (that is, without a main?)

但我没有找到答案...

【问题讨论】:

  • 那里有很多编译器。您实际使用的是哪些?

标签: c++ windows linux g++ cc


【解决方案1】:

对于几乎所有编译器,-c 应该默认生成一个.o 文件。您可以使用与您的 sun 编译器相同的语法:gcc 也支持-o

这应该可以正常工作:

 gcc -Wall -c file.c -o file.o

请注意,在 Windows 上,.ofiles 通常被命名为 .obj 作为视觉约定:遵守该约定可能是个好主意。

我认为如果在命令行中使用 Visual Studio 编译器,则必须使用 /c 使其编译,如 MS web site 中定义的那样

最后,如果你正在编译 C++,你应该使用 g++ 而不是 gcc afaik。

【讨论】:

    【解决方案2】:

    gcc -c file.c 应该可以正常工作吗?

    【讨论】:

      【解决方案3】:

      我所知道的每个 C 编译器都可以识别这种编译模式的 -c 标志。

      【讨论】:

        猜你喜欢
        • 2011-11-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多