实战经验:如何在Linux上编译静态链接程序
作者:BlogUpdater |
时间:2017-04-06 |
浏览:2624 |
评论已关闭 条评论
有时候需要在Linux上编译静态链接C库的程序,这样就可以将编译出来的程序直接拷贝到其他Linux系统上直接运行,而无需担心目标系统的C库版本是否兼容。
具体方法如下:
首先安装C库:yum install glibc-static
編譯:
OBJS = main.o
CC = gcc
CFLAGS = -Wall -O -g -m32 -march=i386 -mtune=i386 -static -static-libgcc
TARGET = ./dot_matrix
DIR_SRC = ./src
DIR_INC = ./inc
INCLUDE = -I$(DIR_INC)
%.o: %.c
$(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@
SOURCES = $(wildcard $(DIR_SRC)/*.c)
OBJS = $(patsubst $(DIR_SRC)/%.c, $(DIR_SRC)/%.o, $(SOURCES))
$(TARGET): $(OBJS)
$(CC) $(CFLAGS) $(INCLUDE) $(OBJS) -o $(TARGET)
chmod +x $(TARGET)
clean:
rm -rfv $(DIR_SRC)/*.o $(TARGET)
需要特别注意上文中红色的部分。
如需转载,请注明来自:Topomel Box
- 下一篇: 小技巧:使用appcmd来自动化部署IIS网站
- 上一篇: 深度理解:Linux设备驱动移植简介
相关推荐
- 绘制菜单符号的技法
- Posted on 12月26日
- 为什么Windows错误报告叫作”Dr. Watson”?
- Posted on 01月09日
- 在运行时创建一个对话框模板
- Posted on 10月08日
- 向API添加标志位并不具备扩展性
- Posted on 07月23日
评论已关闭。