ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建

1.打开Visual Studio Installer安装linux开发环境

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第1张图片

2.配置linux环境

工具->选项->跨平台->连接管理器->添加 远程linux系统
ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第2张图片

3.创建主程序project(这里选择控制太应用程序)

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第3张图片
代码如下:

#include 
#include 
#include "Dynamic/Dynamic.h"
#include "Static/Static.h"

int main()
{
    printf("hello from test!\n");
	printf("static_test:%d\n", static_test(1));
	printf("dynamic_test:%d\n", dynamic_test(1));
	getchar();
    return 0;
}

4.创建动态库

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第4张图片
代码如下:

Dynamic.h

#pragma once
int dynamic_test(int n);

Dynamic.cpp

#include "Dynamic.h"
int dynamic_test(int n) {
	return n * 2;
}

5.创建静态库

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第5张图片
代码如下:

Static.h

#pragma once
int static_test(int n);

Static.cpp

#include "Static.h"
int static_test(int n)
{
	return n * 3;
}

6.主程序project搭建环境

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第6张图片
1.配置属性->常规

  • 输出目录
$(ProjectDir)..\bin\$(Platform)\$(Configuration)\
  • 目标扩展名 .out(可为空)

  • 远程生成根目录

/root/projects/$(SolutionName)
  • 远程生成项目目录
$(RemoteRootDir)

2.GDB调试设置
ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第7张图片

  • 程序

    $(RemoteRootDir)/bin/$(Platform)/$(Configuration)/$(TargetName)$(TargetExt)
    
  • 工作目录

    $(RemoteRootDir)/bin/$(Platform)/$(Configuration)
    
  • 其他调试程序命令

    set solib-search-path $(SolutionDir)bin/$(Platform)/$(Configuration)
    

3.配置属性->C/C++
ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第8张图片

  • 常规

    ./..;$(StlIncludeDirectories);
    

4.配置属性->链接器
ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第9张图片

  • 常规

    $(RemoteRootDir)/bin/$(Platform)/$(Configuration)/$(TargetName)$(TargetExt)
    
  • 附加库目录

    $(RemoteRootDir)/bin/$(Platform)/$(Configuration);%(AdditionalLibraryDirectories)
    
    • 输入->库依赖项
    • ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第10张图片
  • 链接器->命令行

  • ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第11张图片

-Wl,-rpath=$(RemoteRootDir)/bin/$(Platform)/$(Configuration) 

7.动态库配置linux环境

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第12张图片
主要配置参数:

输出目录:$(ProjectDir)..\bin\$(Platform)\$(Configuration)\

8.静态库配置linux环境

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第13张图片

输出目录:$(ProjectDir)..\bin\$(Platform)\$(Configuration)\

9.编译效果

ARM64_VS2017 动态库 静态库编译 主程序调用环境搭建_第14张图片

你可能感兴趣的:(linux,visual,studio,code)