Linux环境下编译和执行c程序的方法
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章将为大家详细讲解有关Linux环境下编译和执行c程序的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1 单个文件的编译和执行创建main.c文件,内容如
千家信息网最后更新 2025年12月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安全错误
数据库的锁怎样保障安全
阳朔租房软件开发
数据库400万条数据怎么优化
软件开发的命名方法
人民日报 网络安全
福特公司软件开发
东营服务器运维管理系统价格
4k家庭服务器广东
江苏服务器机柜价钱
天心区软件开发专业学校
ktv网络技术员怎么做
ai软件开发技术招聘
天全县博派软件开发有限公司
余姚手机软件开发哪家好
虚拟化网络技术与云计算
我的世界服务器开通教程
找答案软件开发
国泰安数据库a b c
群晖服务器创建管理员
数据库储存器安全
系统学习数据库需要看什么书
破局网络安全人才荒
网络安全内外部协调制度
数据库查询语言的缩写词为
金融软件开发商上市公司
软件开发商专家评审
江西电信主服务器
从数据库提取数据库
实验五数据库完整性约束
网络技术监测平台
如何看服务器内存被什么占用了