Linux环境下编译和执行c程序的方法
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关Linux环境下编译和执行c程序的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1 单个文件的编译和执行创建main.c文件,内容如
千家信息网最后更新 2026年11月02日Linux环境下编译和执行c程序的方法
这篇文章将为大家详细讲解有关Linux环境下编译和执行c程序的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
1 单个文件的编译和执行
创建main.c文件,内容如下:
#include#include int main(void){printf("Hello world!\n");return 0;};
编译:
gcc -o main main.o
执行:
root@ubuntu:/ybg/python# ./mainInput an integer:10sum=55
2 多个文件的编译和执行
创建sum.c文件,内容如下:
#include#include int sum(int x){int i, result=0;for(i=0; i<=x; i++){result+=i;}if(x > 100)exit(-1);return result;};
创建main.c文件,内容如下:
#include#include int main(void){int x;printf("Input an integer:\n");scanf("%d", &x);printf("sum=%d\n", sum(x));return 0;};
编译
gcc -c sum.c -fPIC -o sum.ogcc -c main.c -fPIC -o main.o
生成可执行文件,文件名为main
gcc -o main sum.o main.o
执行程序
./main
执行结果同上
3 使用动态链接库方式
生成动态链接库
gcc sum.o -shared -o sum.so
生成可执行文件,文件名为main
gcc -o main sum.o main.o
执行
./main
如果有以下报错,说明在默认的动态链接库路径下没有找到刚刚生成的sum.so
./main: error while loading shared libraries: sum.so: cannot open shared object file: No such file or directory
执行以下命令,将当前目录添加到动态链接库查找路径环境变量
export LD_LIBRARY_PATH=pwd:$LD_LIBRARY_PATH
再次执行
./main
执行结果同上
4 python调用.so动态链接库
创建test.py文件,内容如下:
import ctypesso = ctypes.CDLL('./sum.so')print "so.sum(50) = %d" % so.sum(50)执行
root@ubuntu:/ybg/python# python test.py so.sum(50) = 1275
关于Linux环境下编译和执行c程序的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
文件
内容
动态
链接
生成
编译
环境
程序
下编
方法
更多
篇文章
结果
路径
不错
实用
再次
单个
变量
命令
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技互联网政务服务
致聘互联网科技
汇久创客互联网科技
互联网科技ppt模板
互联网科技网站
大白互联网科技
互联网科技素材视频竖屏
科技赋能互联网健康
上海宁丞科技互联网
江阴互联网智能科技产品进口
移动互联网年度科技创新
哈尔滨屹滨互联网科技有限公司
广西互联网科技孵化中心
威龙国际互联网科技公司
明优互联网科技有限公司
中和天地互联网科技有限公司
互联网科技资金流入
易租星互联网科技有限公司
黑龙江互联网科技公司
优雇互联网科技有限公司
互联网金融科技
互联网科技股
科技平台互联网
厦门中拓互联网络科技有限公司
科技类公司包括互联网吗
深圳艾果互联网通讯科技
众安科技工业互联网合作
互联网安防科技感
互联网时代高科技布局
科技互联网专业工作会议发言稿