[Linux/UOS]同一解决方案下的控制台程序依赖SO库的方法

news2024/11/24 18:29:48

该方法是基于VS2019的远程调试Linux的方案,使用的是UOS系统,本文不会去详述如何远程调试Linux和如何新建解决方案中的.so项目和.out项目
只关注于如何令.out项目依赖.so,并成功调用运行

在这里插入图片描述
以一个如上图结构的解决方案为例子,SysInfo是你的SO库项目,Test是你的.out项目

然后我们主要配置的就是这个.out项目

在这里插入图片描述
我们首先如上图所示,选中这个项目,然后右键他展开列表,并选择项目依赖项

在这里插入图片描述

然后给你依赖的So项目打个钩选中它

在这里插入图片描述

随后确定,然后重新右键项目,并点击“属性”展开属性页如下

在这里插入图片描述

随后在所有配置下的所有平台的前提下,我们编辑“调试”中的“其他调试程序命令”
填写命令如下

set env LD_LIBRARY_PATH /data/home/admin/projects/SysInfo/bin/$(Platform)/$(Configuration)

这个路径是你生成过一次SO项目后,在Linux中的SO文件的所在目录
设置这个可以让你在VS中调试的时候不用担心环境目录导致无法运行

在这里插入图片描述

之后转到“常规”,并选择“附加库目录”,填入如下命令
该命令使得编译器得以找到依赖库的位置

/data/home/admin/projects/SysInfo/bin/$(Platform)/$(Configuration)

在这里插入图片描述
最后,在“输入”中的“库依赖项”填入你的依赖库名称,就是把生成的libSysInfo.so去掉lib和.so,中间的SysInfo就是你的依赖库名称
在这里插入图片描述
到这里,依赖配置就完成了,可以直接点击调试以运行

我的Test控制台项目的代码如下所示
在这里插入图片描述

#include <iostream>
using namespace std;

#include "../SysInfo/SysInfo.h"

int main() {
	cout << "Hello ";
	cout << SySInfoNameSpace::GetMemTotal();
}

上述代码其中,SySInfoNameSpace::GetMemTotal()是我SysInfo依赖库中的方法。

PS:Linux控制台窗口可以通过“调试”中常驻打开
在这里插入图片描述
如下:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1184030.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

开源库windows平台编译

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff1a;…

论文阅读——变化检测

Viewpoint Integration and Registration with Vision Language Foundation Model for Image Change Understanding 只有fused adapter image encoder, viewpoint registration flow, semantic emphasizing module, 和 fully connected layer 训练&#xff0c;其他参数冻结。 F…

MeterSphere 任意文件读取漏洞(CVE-2023-25814)

MeterSphere 任意文件读取漏洞&#xff08;CVE-2023-25814&#xff09; 免责声明漏洞描述漏洞影响漏洞危害网络测绘Fofa: title"MeterSphere" 漏洞复现1. 构造poc2. 发送数据包3. 查看文件 免责声明 仅用于技术交流,目的是向相关安全人员展示漏洞利用方式,以便更好地…

使用requests库来发送HTTP请求

首先&#xff0c;你需要安装Python的requests和BeautifulSoup库。然后&#xff0c;你可以使用requests库来发送HTTP请求&#xff0c;并用BeautifulSoup库来解析HTML文档。 import requests from bs4 import BeautifulSouprequests.get(http://www.91hfdm.com) 这行代码会向 ‘…

win11网络连接正常,但是无法正常上网

前言&#xff1a; 这个是一个win11的bug&#xff0c;好多人都遇到了&#xff0c;在孜孜不倦的百度下&#xff0c;毫无收获&#xff0c;终于是在抖音上看到有人分享的经验而解决了这个问题。 找到internet选项&#xff0c;然后点击打开 选择连接 将代理服务器中&#xff0c;为…

数据结构和算法是人工智能的基石

文章目录 1. 引言2. 主要内容3. 联合推荐4. 购买方式5. 总结 1. 引言 数据结构和算法是计算机科学的基石&#xff0c;是计算机的灵魂&#xff0c; 要想成为计算机专业人员&#xff0c;学习和掌握算法是十分必要的。不懂数据结构和算法的人不可能写出效率更高的代码。计算机科学…

leetcode:141. 环形链表

一、题目 函数原型&#xff1a; bool hasCycle(struct ListNode *head) 二、算法 判断不是环形链表&#xff0c;只需遍历链表找到空结点即可。 判断是环形链表&#xff0c;由于链表是环形的&#xff0c;遍历不会永远不会结束。所以要设置快慢指针&#xff0c;慢指针一次走一步&…

Linux开发板安装Ubuntu标准桌面环境(或其他桌面环境)

我们每入手一款开发板&#xff0c;一般配套的固件系统都会默认运行相应厂商定制的桌面环境&#xff08;在一些桌面环境上定制的&#xff09;。这个时候有些同学可能不喜欢厂商定制的桌面系统想要安装其他桌面系统比如我们虚拟机上常用的Ubuntu标准桌面系统&#xff08;不建议因…

迅为龙芯3A5000主板,支持PCIE 3.0、USB 3.0和 SATA 3.0显示接口2 路、HDMI 和1路 VGA,可直连显示器

性能强 采用全国产龙芯3A5000处理器&#xff0c;基于龙芯自主指令系统 (LoongArch)的LA464微结构&#xff0c;并进一步提升频率&#xff0c;降低功耗&#xff0c;优化性能。 桥片 桥片采用龙芯 7A2000&#xff0c;支持PCIE 3.0、USB 3.0和 SATA 3.0显示接口2 路、HDMI 和1路 …

Word背景图片插入,5个简单方法快速完成!

“我想在我的Word文档里加入一些背景图片&#xff0c;让整个文档看起来更美观&#xff0c;但是我不知道应该怎么操作&#xff0c;希望大家帮帮我&#xff01;” 很多朋友在工作和学习中都会用到Word来编写文章&#xff0c;为Word设置背景图片可以增加文档的吸引力和个性化。Wor…

java入坑之类加载器

一、类加载机制 1.1类加载过程 类加载是Java虚拟机将类的字节码数据从磁盘或网络中读入内存&#xff0c;并转换成在JVM中可以被执行的Java类型的过程。类加载器是Java虚拟机的重要组成部分&#xff0c;负责加载和解析类的字节码&#xff0c;将其转换成Java虚拟机中的类对象&am…

聊聊芯片制造中的金属杂质

在半导体制造过程中&#xff0c;杂质控制至关重要。杂质可以影响半导体的电导率&#xff0c;导致性能降低或者失效。在这些杂质中&#xff0c;金属杂质是最主要的来源之一&#xff0c;这些金属杂质可以通过扩散或者电迁移的方式在芯片中迅速扩散&#xff0c;因此控制金属杂质的…

iOS 让界面元素的文字随着语言的更改而变化——本地化文字跟随

在我的 App 内置的设置中&#xff0c;修改了语言&#xff0c;这时需要让当前界面的文本跟着改变语言。 解决方法是&#xff1a;添加一个观察者&#xff0c;观察 localize 本地语言的通知&#xff0c;然后一有变化就调用自定义的方法执行操作。&#xff08;而设置中其实是改变了…

ebay、虾皮、Lazada、poshmark等跨境本土店群多账号如何做防关联

首先&#xff0c;需要了解跨境电商店铺关联及防关联的概念。关联指的是在跨境电商平台上&#xff0c;一个卖家拥有并运营多个账户的状态。而防关联则是指电商平台禁止卖家在同一环境下运营维护多个账号的行为。 那么&#xff0c;为什么要防范关联情况呢&#xff1f;其实&#…

CommunicationsException: Communications link failure

CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. 通信异常&#xff1a;通信链路故障 最后一个成功发送到服务器的数据包是0毫秒前…

2010年4月27日Go生态洞察:JSON-RPC与接口的故事

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

VUE识别访问设备是移动端还是pc端

一、思路 有些网站需要区分手机端网页和pc端网页&#xff0c;做到不同设备访问不同的网页&#xff0c;增强用户的使用体验&#xff0c;可以在app.vue中作一个判断&#xff08;navigator.userAgent&#xff09;&#xff0c;然后跳转不同的路由。 二、原理 navigator.userAgent …

3 Paimon数据湖中的表类型详解

更多Paimon数据湖内容请关注&#xff1a;https://edu.51cto.com/course/35051.html Paimon中支持多种表类型&#xff0c;下面我们来看一下。 3.1 全局维度 首先从全局维度来看&#xff0c;Paimon中的表类型可以大致划分为4种&#xff1a; 内部表、外部表、分区表和临时表。 …

AI对抗中的AI:技术展望与应用研究

随着人工智能&#xff08;AI&#xff09;技术的迅猛发展&#xff0c;AI系统之间的对抗性冲突也逐渐崭露头角。本文从AI技术的发展与应用入手&#xff0c;探讨如何利用AI技术来打败AI系统。我们将关注领域包括对抗学习、对抗生成网络、强化学习等&#xff0c;并分析潜在应用领域…

第三章:java的三大特征

系列文章目录 文章目录 系列文章目录前言一、封装二、继承三、多态总结 前言 面向对象编程有三大特征&#xff1a; 封装、 继承和多态。 一、封装 封装&#xff08;encapsulation&#xff09;就是把抽象出的数据【属性】和对数据的操作【方法】封装在一起&#xff0c;数据被保…