用C++编辑的程序怎样封装成可执行文件?

用C++编辑的程序怎样封装成可执行文件?,第1张

C++编译器将源代码(source)编译成.obj(gcc编译出的是.o文件)的文件,所谓对象文件(object)。

这些文件包含了从源代码编译而成的机器代码,但是里面涉及到的内存地址大多是未定的。

所以需要一个链接(link)过程,将单个源文件编译成的obj装配成可执行文件。其主要作用就是处理各个obj之间的交叉调用(比如说,a.cpp中调用了b.cpp中实现的某个函数)和变量地址之类的。

C++编译器编译出的obj虽然包含了机器代码,但是他们并不是可执行文件。在各种 *** 作系统的可执行格式中,通常都包含了与执行过程相关的一些数据,或者说参数等。要使obj中的代码可以执行,还需要链接器加上这样的数据。

总得来说,过程大概是这样孙扒的:

>编译每个源文件,分别得到obj文件

>链接各个obj文件

>链接各种支持库(比如标准库李戚、 *** 作系统平哪凯陵台运行支持库等)

>加上可执行文件头,资源(windows下的话)等

>生成exe(windows)

封装的概念来自对面向对山嫌象的编程模式 比如说一个方法,你把他放到一个类里面, 下次如果别的地方码唯虚要用到的话,直接调用这个方法就行了,不用再重新编迟燃写。

这样能明白么?

如果没有面向对象的基础,可以去了解一下

解决方法:

(1)在cadence里选中左边的项李歼渣目里的.obj文件,右击->Edit Object Properties,查看是否所有的元件都添加改和了正确的封装信息,.psm文件是必需的;并查看电气连接是否正确(2)在allegro里查看是不是所有元件都建立了正确的封装;

(3)重新设置padpath和哪悄psmpath的路径。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12202460.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存