Linux环境下编译和执行c程序的方法
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章将为大家详细讲解有关Linux环境下编译和执行c程序的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1 单个文件的编译和执行创建main.c文件,内容如
千家信息网最后更新 2025年02月01日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安全错误
数据库的锁怎样保障安全
湖北拼接服务器报价
推动数据库技术不断向着
数据库事务隔离详解
互联网科技公司广告语6
网络安全行动计划实施方案
服务器主板能插多少显卡
媒体服务器与多媒体服务器
无网络安全模式杀毒
安徽数据网络技术服务价格
网站租用服务器价格
互联网科技文创公司行业周期
网络安全竞技赛
网络安全事件案例的文章
虚拟化服务器硬件配置
数据库数据过多时怎么优化
怎么判断开放网络安全吗
镇海专业软件开发公司
机场 加强 网络安全
我的世界服务器高级附魔软件
数据库技术是数据库分析的基础
数据库技术应用的案例
人间地狱怎么设置服务器
2021我国网络安全形势
图片名称怎么存储到数据库
网络安全青海市场分析
酒店wifi 网络安全
手机管理服务器的软件
怎么下载微信无法连接到服务器
修改数据库启动时间
数据库收集系统的网站源码