无法用 C 语言运行我的 hello world

无法用 C 语言运行我的 hello world

我正在尝试使用 gedit 或 sublime text(我更喜欢这两种方式)用 C 编写一个基本程序,但无论我在尝试编译或运行时做什么,甚至在编写时,我都无法选择使用“stdio.h”或任何类似的包。即使我开始输入,#include <stsublime 建议的唯一单词补全也是“struct”。

我已阅读了数十个帖子,但都通过安装解决了这个问题gcc,我尝试重新安装多次,但没有成功。

这是的输出gcc -v

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.2.0-8ubuntu3' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.2.0 (Ubuntu 7.2.0-8ubuntu3) `

这是代码:

#include <stdio.h>

int main(void)
{
printf("hello, world\n");
}

当我使用 进行编译时gcc,我什么也没有得到,至少没有错误。但是当我尝试使用 运行时,./hello.c这就是我得到的。

答案1

gcc 默认创建一个名为 a.out 的可执行文件。请运行该文件。

或者,创建一个合理命名的可执行文件:

gcc -o hello hello.c

更简单的是,使用make 内置的默认规则

make hello

答案2

您需要安装相应的软件包,其中包含标题(通常libc6-dev

sudo apt-get install libc6-dev

并且一定要build-essential安装

sudo apt-get install build-essential

然后hello.c使用以下命令编译你的:

gcc hello.c -o hello

并运行它:

./hello 

相关内容