环境变量设置
因不同电脑程序安装程序路径不同,添加环境变量大同小异,我是先安装的vs2017,后安装的MFC板块,可能略有不同,环境变量设置实际上就是为我们在命令行窗口运行程序时,将需要的.lib文件和.h文件加进去
可以参考我的环境变量设置
这是加在path环境变量的路径,看最后两条就行其余的是其他软件的路径
倒数第二条是vs安装目录下的
倒数第一条是c盘固定文件夹下的
新建名为 ilb 的环境变量,加入下列路径
新建名为include 的环境变量,加入下列路径
运行hello world程序
桌面新建文件,将后缀名改为,cpp
输入以下代码
#include<iostream>
using namespace std;
int main()
{
cout << "hello world!" << endl;
return 0;
}
win10下打开cmd命令行窗口
输入命令 cd Desktop 回车,当前操作目录改为桌面
输入命令 cl /c hello.cpp 回车
对hello.cpp进行编译,成功会生成.obj文件
此时桌面出现hello.obj文件
最后链接obj文件,生成exe文件
此时桌面生成.exe文件
最后直接在命令行ck输入 hello.exe
运行程序,下图出现 hello world! 程序运行成功
运行Windows API程序
Windows API程序源码:https://blog.csdn.net/xianyudewo/article/details/108750300.
该项目文件集如下:
看上去很复杂,但在vs工程项目下,只有两个源文件和一个rc文件。其余文件可以忽略
所以只需要编译两个cpp文件和一个rc文件,最后链接即可
编译
链接
出现如下错误,经查询,下列错误意为只有声明没有定义
解决方案:
在vs中打开该项目,选择项目->属性
选择链接器中的输入->附加依赖项中的.ilb文件,全部复制,粘贴到命令行窗口中
附加依赖项末尾有个奇奇怪怪的文件名,在命令行窗口中可以直接删掉,不影响后续操作
运行
输入 Win32Project1.exe 回车
运行MFC程序
在vs中新建一个基于对话框的MFC程序。具体操作:https://blog.csdn.net/xianyudewo/article/details/109026993
vs项目下可见,和Windows API程序差不多,这里是三个.cpp文件和一个.rc文件
编译
链接
运行
总结:
在编译链接过程中遇到很多问题,多得数不清,但在强大的百度帮助下,我都一一解决了,很有成就感,也很费时间,就是因为自己的专业知识不过关,涉猎方面也不够广。
我总结下我遇到的问题类型:
一、缺少.h和.lib文件
这种情况你必须学会利用强大的百度查一查这个文件位于哪一个文件夹下,然后吧相应的路径加入环境变量中,是.h文件就将路径加入include环境变量中,是.lib文件就将环境变量加入lib环境变量中。
或者你直接在电脑每个盘里搜索文件名,自行判断哪个文件夹是正确的(因为可能不唯一,版本差异或者电脑位数的问题,如我的就是x86,添加的都是x86的文件夹)
二、无法解析的外部符号
这个意思是有声明没定义,查看相应软件里的依赖库文件名,加上去就行,如果还不行就是问题一的类型
参考:
https://blog.csdn.net/qq_43279579/article/details/108851773.
https://bbs.csdn.net/topics/300118581?locationNum=9
https://blog.csdn.net/weixin_44078318/article/details/104861237
关于rc.exe的相关设置和介绍那篇博客突然找不到了