gcc/g++ 以及makefile
2024-10-06 22:29:57
生成可执行文件 g++ mutiprocess.cpp -o test
-fpic:产生位置无关码,位置无关码就是可以在进程的任意内存位置执行的目标码,动态链接库必须使用
-c : 只生成 .o 文件
-o : 生成可执行文件
-g : 生成可调试文件
-lworld表示libworld.so动态库文件
“-static”表示寻找libworld.a静态库文件
-shared
-s
: 在命令运行时不输出命令的输出
.so makefile
c = cc
c++ = g++ ifeq ($(debug), 1)
GFLAG = -g
SFLAG =
OFLAG =
APPNAME = libpic_render_service_d.so
else
GFLAG =
SFLAG = -s
OFLAG = -O3
APPNAME = libpic_render_service.so
endif OPENCVLIB = \
-lopencv_legacy \
-lopencv_highgui \
-lopencv_imgproc \
-lopencv_core \
-llibjasper \
-llibjpeg \
-llibpng \
-lIlmImf \
-llibtiff \
-lopencv_photo \ OBJS = src/pic_render_service.o \
../oop/picture/picture_tools.o \
../oop/cv/cv_tools.o \
#src/ook/codecs/avdef \ CPPFLAGS = \
-std=c99 \
-Wall -DNDEBUG -DP_LINUX -D_GNU_SOURCE -D__USE_GNU -D_GLIBCXX_ATOMIC \
-DOPENCV_INCLUDED \
-fno-strict-aliasing \
-shared \
-fPIC \
-I./src \
-I./src/opencv/include/ \
-I/work/oop \ .cpp.o:
$(c++) $(CPPFLAGS) $(OFLAG) $(GFLAG) -c $< -o $@ all: $(OBJS)
$(c++) $(SFLAG) -shared -o $(APPNAME) $(OBJS) \
-L./src/opencv/lib \
$(OPENCVLIB) \
-lrt \
-Wl,--version-script=libpic_render_service.version clean:
rm -f src/*.o
最新文章
- MySQL数据库
- Java 后台获取当前时间
- LINQ to Entities 事务简单例子
- Canvas与Image互相转换
- JSP页面的中文乱码
- Making the Elephant Dance: Strategic Enterprise Analysis
- c语言结构体5之匿名结构体
- myeclipse集成weblogicserver
- Java 打开文件的两种方式
- requestScope含义
- 移动端IOS第三方输入法遮挡底部Input及android键盘回落留白问题
- Linux 常见命令示例【一】
- day04 list tuple
- Centos6.5部署Rsyslog+cron+rsync备份服务器
- 第三个Sprint冲刺第3天
- iOS(Swift)-Runtime之关于页面跳转的捷径【Runtime获取当前ViewController,很常用】
- 设置PDF文件默认缩放比例
- Spring bean的初始化及销毁
- 沈阳网络赛I-Lattice&#39;s basics in digital electronics【模拟】
- QP(Quote-Printable) 编码