Armadillo使用介绍(九):下载Armadillo、配置工程、运行第一个程序

article/2025/8/20 22:16:10

一、下载Armadillo

通过以下两种途径下载Armadillo C++库源码:

  • Armadillo Download page
    如下图所示,可以下载到最新版本的armadillo库(随着时间变化,armadillo版本可能会比图示的版本更高)。
    Armadillo Download page图片
    点击上图红框中的链接后,会进入下图所示页面,自动下载源码。
    下载页面
  • Armadillo Gitlab page
    可以从Armadillo在Gitlab的仓库下载到最新的源码(Armadillo的仓库在Gitlab而非Github的原因,参见“What happened to the source code repository at GitHub ?”),具体步骤参见下图中的①->②->③
    Armadillo Gitlab page图片

二、配置工程

本节仅介绍Windows下采用visual studio搭建工程时应用Armadillo的方法,且仅支持win64版本。
对于配置类型为**应用程序(.exe)**的工程,采用以下配置方式:
2.1 前文下载的源码文件夹复制到解决方案路径下(宏命令表示为$(SolutionDir)
2.2 这里采用配置为Debug,平台为x64
2.3 “右键”->“属性”->“配置属性”->“C/C++”->“常规”->“附加包含目录”,新增值$(SolutionDir)armadillo\include;
附加包含目录
2.4 “链接器”->“常规”->“附加库目录”,新增值$(SolutionDir)armadillo\examples\lib_win64;
附加库目录
2.5 “链接器”->“输入”->“附加依赖项”,新增值lapack_win64_MT.lib;blas_win64_MT.lib;
附加依赖项
2.6 “生成事件”->“后期生成事件”->“命令行”,新增值copy $(SolutionDir)armadillo\examples\lib_win64\*.dll $(OutDir)
“生成事件”->“后期生成事件”->“说明”,新增值Copy .DLL to output directory(该步骤非必要,可选)
后期生成事件
对于上述配置的内容,配置完成后可以在工程的vcxproj文件中看到(见如下代码),一般命名格式为$(ProjectName).vcxproj(例如本示例的工程名称为ShortExample,则vcxproj文件为ShortExample.vcxproj)。

  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"><ClCompile><PrecompiledHeader></PrecompiledHeader><WarningLevel>Level3</WarningLevel><Optimization>Disabled</Optimization><PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions><SDLCheck>true</SDLCheck><AdditionalIncludeDirectories>$(SolutionDir)armadillo\include;</AdditionalIncludeDirectories></ClCompile><Link><SubSystem>Console</SubSystem><GenerateDebugInformation>true</GenerateDebugInformation><AdditionalDependencies>lapack_win64_MT.lib;blas_win64_MT.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies><AdditionalLibraryDirectories>$(SolutionDir)armadillo\examples\lib_win64;</AdditionalLibraryDirectories></Link><PostBuildEvent><Command>copy $(SolutionDir)armadillo\examples\lib_win64\*.dll $(OutDir)</Command></PostBuildEvent><PostBuildEvent><Message>Copy .DLL to output directory</Message></PostBuildEvent></ItemDefinitionGroup>

三、运行第一个程序

源码

#include <iostream>
#include <armadillo>//包含armadillo头文件using namespace std;
using namespace arma;//armadillo命名空间int main()
{cout << "Armadillo version: " << arma_version::as_string() << endl;mat A = randu<mat>(4, 5);//4行5列矩阵mat B = randu<mat>(4, 5);cout << "A*B.t():\n" << A*B.t() << endl;//.t()向量或矩阵转置(A*B.t()).print("A*B.t():");system("pause");return 0;
}

运行结果

Armadillo version: 9.900.1 (Nocturnal Misbehaviour)
A*B.t():0.9536   1.0573   1.0669   0.90870.3911   0.6334   0.6719   0.78341.7734   2.6922   2.1078   2.46130.8542   1.1044   0.8725   0.9546A*B.t():0.9536   1.0573   1.0669   0.90870.3911   0.6334   0.6719   0.78341.7734   2.6922   2.1078   2.46130.8542   1.1044   0.8725   0.9546
请按任意键继续. . .

http://chatgpt.dhexx.cn/article/aU7jfi1E.shtml

相关文章

C++调用Armadillo计算库

1. 下载压缩包&#xff0c;解压到目录&#xff0c;比如D:\ALGLIB\armadillo&#xff0c;只保留include文件夹和examples里的lib_win32文件夹即可&#xff1b; 下载地址&#xff1a;Armadillo: C library for linear algebra & scientific computinghttp://arma.sourceforge…

armadillo 使用杂记

2022.10.06 验证矩阵首地址与首元素首地址的关系 验证矩阵中元素的存储方式 做以下实验 mat m;//输出矩阵头位置cout<<&m<<endl;m<<4<<6<<3<<endr<<1<<3<<1<<endr<<3<<5<<1<<endr;/…

Ubuntu21.10下安装使用Armadillo库

文章目录 一、前言二、下载安装文件三、编译与安装四、代码示例五、总结 一、前言 Armdillo 矩阵运算速度跟 MATLAB 一个量级&#xff0c;为目前使用比较广的 C 矩阵运算库之一&#xff0c;是在 C 下使用 MATLAB 方式操作矩阵很好的选择&#xff0c;许多 MATLAB 的矩阵操作函数…

Armadillo 线性代数库中的聚类算法避坑

1、本文的由来 最近由于需要在C语言编写的项目中使用高斯混合模型聚类算法&#xff0c;最开始是打算自己写一个的&#xff08;参考的是《机器学习》&#xff0c;周志华著这本书&#xff09;&#xff0c;但是最后发现自己写的算法运行效率低&#xff0c;而且对于维度比较高的样本…

C++线代运算库Armadillo配置(Qt CLion VSCode)

目录 1. 前言 2. Armadillo下载 方法1&#xff1a;官网下载 方法2&#xff1a;安装包下载 3. Qt 中 Armadillo 配置 4. CLion 中 Armadillo 配置 5. VSCode 中 Armadillo 配置 1. 前言 工作和学习上一直用着 Armadillo 库中的矩阵运算&#xff0c;极大的提升了 Matlab 代…

Clion 使用 armadillo 配置方法

Clion 使用 armadillo 配置方法 jetbrains 全家桶是我的最爱 但是C的编写网上都是visual studio 的教程&#xff0c;尤其是对于库文件的引用&#xff0c;Clion很少有指导&#xff0c;最近需要将python的程序转为C&#xff0c;用到了armadillo 矩阵库&#xff0c; 但是网上对于…

Armadillo C++ Library

Armadillo 简介 Armadillo C Library是一种C的线性代数库&#xff08;矩阵数学&#xff09;&#xff0c;具有良好的平衡速度与易用性。其底层可以调用不同的BLAS和LAPACK库来提高效率&#xff0c;同时利用模板编程提高了代码的操作性 官网下载链接&#xff1a;点这里下载 Vi…

C++中armadillo矩阵库使用说明

在http://blog.csdn.net/piaoxuezhong/article/details/58055709博文中介绍了eigen矩阵库的使用&#xff0c;这里介绍另一种矩阵库&#xff1a;armadillo~ Armadillo&#xff1a;C下的Matlab替代品 armadillo是目前使用比较广的C矩阵运算库之一&#xff0c;许多Matlab的矩阵操…

armadillo库安装教程

目录 armadillo库功能介绍 armadillo库安装 vs中添加步骤 测试 armadillo库功能介绍 在c编程中&#xff0c;我们在进行一些算法运算经常会面对矩阵计算&#xff0c;c的标准库中是没有关于矩阵运算的库的&#xff0c;在面对矩阵计算我们只能自己编写相关代码进行计算&#xf…

armadillo使用,armadillo提高编译效率和速度

Armadillo是一个全面的、基于模板的 C 线性代数库&#xff0c;设计有 LAPACK 和 ATLAS 库的替代接口。 armadillo使用工具旨在提供速度和易用性&#xff0c;以及类似于 Matlab 的熟悉语法(或 API)。 armadillo使用允许您编写可以集成到组件或应用程序中的各种类型的数学函数。它…

C++ Armadillo矩阵库的安装与基本用法

文章目录 Armadillo安装入门案例直接赋值切片常用函数 Armadillo 安装 Armadillo是一个具有Matlab风格的线性代数包。下载之后解压到任意文件夹&#xff0c;然后对VS工程进行设置。 菜单栏生成->配置管理器&#xff0c;将平台改为x64右键项目名称->属性(快捷键ShiftF4…

一个常见的大数据平台架构

这是一个典型的大数据架构&#xff0c;且对架构进行了「分层」&#xff0c;分为「数据源层」、「数据传输层」、「数据存储层」、「编程模型层」和「数据分析层」&#xff0c;如果继续往上走的话&#xff0c;还有「数据可视化层」和「数据应用层」。

大数据平台架构实践

说明 本篇博客整理自参考内容&#xff0c;完整内容请查看原文章&#xff1b; 技术选型 MOLAP 与Druid相类似的实时数据分析工具&#xff0c;还有Linkedln的Pinot和eBay的Kylin&#xff0c;它们都是基于Java开发的。Druid相对比较轻量级&#xff0c;用的人也多&#xff0c;毕…

网易大数据平台架构实践分享!

随着网易云音乐、新闻、考拉、严选等互联网业务的快速发展&#xff0c;网易开始加速大数据平台建设&#xff0c;以提高数据获取速度&#xff0c;提升数据分析效率&#xff0c;更快发挥数据价值。 本次演讲主要分享网易如何围绕和改造开源技术&#xff0c;以产品化思维打造网易自…

详解大数据平台架构

目录: 什么是大数据 Hadoop介绍-HDFS、MR、Hbase 大数据平台应用举例-腾讯 公司的大数据平台架构 “就像望远镜让我们能够感受宇宙,显微镜让我们能够观测微生物一样,大数据正在改变我们的生活以及理解世界的方式……”。 大数据的4V特征 公司的“大数据” 随着公司业…

京东金融大数据平台架构(附82页PPT)

公众号推文规则变了&#xff0c;点击上方 "数据社", 设为星标 后台回复【加群】&#xff0c;申请加入数据学习交流群 大家好&#xff0c;我是一哥&#xff0c;给大家分享一下京东金融大数据分析平台总体架构介绍&#xff0c;废话不说&#xff0c;干货收藏吧&#xff…

大数据平台架构设计探究

本文首发于 vivo互联网技术 微信公众号 链接&#xff1a;https://mp.weixin.qq.com/s/npRRRDqNUHNjbybliFxOxA 作者&#xff1a;刘延江 近年来&#xff0c;随着IT技术与大数据、机器学习、算法方向的不断发展&#xff0c;越来越多的企业都意识到了数据存在的价值&#xff0c;将…

乡村振兴大数据平台架构方案(附下载)

迎加入星球下载所有资料&#xff0c;转发朋友圈截图回复666亦可下载 加入星球&#xff0c;好资料一直有 推荐阅读&#xff1a; 世界的真实格局分析&#xff0c;地球人类社会底层运行原理 不是你需要中台&#xff0c;而是一名合格的架构师&#xff08;附各大厂中台建设PPT&#…

大数据平台架构+ETL

1 ETL&#xff0c;Extraction-Trasformation-Loading&#xff0c;即数据读取&#xff0c;转换&#xff0c;装载的过程&#xff0c;是构建数据仓库的重要环节。 ETL是将业务系统的数据经过抽取&#xff0c;清洗转换之后加载到数据仓库的过程&#xff0c;目的是将企业中的额分散的…

百度、阿里、腾讯平台架构都熟悉,小米大数据平台架构OLAP架构演进是否了解

阿里、百度、腾讯的大数据平台架构都有很多地方有介绍了&#xff0c;接下来给大家深入了解小米大数据平台架构OLAP架构演进 全网最详细的Hadoop文章系列&#xff0c;强烈建议收藏加关注&#xff01; 2021大数据领域优质创作博客&#xff0c;带你从入门到精通&#xff0c;该博客…