C++ Linux高手进来一下,
我用kdevelop新建了一个基于简单的helloworld的工程,其实我是想跟VC那样创建一个DLL的工程(相当LINUX下的SO),不过这IDE好像没有,我在这里面有10个来类,这些类之间可能存在交叉引用的关系,本身又引用了外部的两个SO文件,把其对应的.h文件包含进来了,我现在想把整个工程编译成一个so的文件(里面调用了另外两个外部SO里面的类)
编译后这个IDE在一个目录下已经生成了很多个.o文件:aggregates.o b2c.o baseobject.o datafactory.o 等等
请问怎么生成.so文件,
g++ -shared -o libmylib.so aggregates.o b2c.o baseobject.o datafactory.o ?
还有如果别人要引用我这个SO,要包含头文件,比如说我对外的所有接口就是datafactory类的一些方法,按理说就包含这个头文件就行了,但我这个头文件本身又包含了其他类的头文件,这样下去,最后发现不是把所有的头文件都 要让外部用户包含了?
本人第一次用linux下的C++编程,
谁能给指点一下思路
还引用了另外两个so 呢,(z.so curl.so),不需要在这条编译命令里写?
[Quote=引用 1 楼 thy38 的回复:]
只要包含主文件里面include的文件就可以了。
---------------------------------
不可能吧,我这个主文件里面包含了一些头文件,这些文件里面又包含了其他的头文件,最终搞得都 包含进来了,搞得这个SO的封装没啥 意义了,本来是想对原先两个SO进行一些封装,让别人直接用我这个SO,
看来用linux的这里还是不多啊
如需要阅读该回复,请登录或注册CSDN!
相关问答:
为什么C写的DLL文件C、PB能调用VB不能调用?
VB里为什么有的DLL直接通过引用可以使用?有的需要通过declare申明外部函数?这些DLL有什么差别?
1、为什么PB能通过DECLARE声明而VB不行?
2、如果这个dll中的 ......
问一下:
#include <stdio.h>
int main()
{
char x, y, z;
int i;
int a[16];
for(i=0; i<=16; i++)
{
a[i] = 0;
......
最近突然想自己来实现一个五子棋程序,但不知道怎么开始,自己也没学画图形函数,能在控制台下直接写吗>>>?????
控制台?比图形界面更麻烦。
http://search.download.csdn.net/search/%E4%BA%94%E5%AD%90% ......
C盘上多的文件名为:dosh , Recycled ,System Volum information, AUTOEXEC.BAT, BOOT.INT , bootfoot.bin, CONFIG.SYS,IO.SYS, MSDOS.SYS, DETECT.COM ,ntldr, pagefile.sys;
而且每个盘上都有这些文件:RECYCLER ......
Linux新手,请大哥大姐不要见笑。
我用root用户登录到Linux系统。在根目录下面建了目录dir1,后用命令cd /dir1进入到dir1目录下,然后再用mkdir dir2建立了目录dir2 ,再后来用命令cd /dir2是,提示为:-bush ......