go开发中引用静态库.a文件的方法

 更新时间:2020年11月03日 10:03:07   作者:archmage199  
这篇文章主要介绍了go开发中引用静态库.a文件的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

前言

我使用goland开发,下面都是用goland做演示

一、生成demo.a

新建一个项目,目录如下

在这里插入图片描述

demo.go

package demo

import (
	"fmt"
)

func Demo() {
	fmt.Printf("hello world")
}

main.go

package main

import "demo"

func main() {
	demo.Demo()
}

配置Run/Debug Configurations,在Go tool arguments:后输入-i,然后运行后就会生成demo.a

在这里插入图片描述
在这里插入图片描述

二、修改demo.go

在文件头添加//go:binary-only-package,添加这个之后就不会编译了,这个在go/build/doc.go文件中最下方有说明

demo.go

//go:binary-only-package

package demo

import (
	_ "fmt"
)

func Demo() {
}
//	//go:binary-only-package
//
//	package mypkg
//
// The source code may include additional Go code. That code is never compiled
// but will be processed by tools like godoc and might be useful as end-user
// documentation.

运行后发现可以正常调用到demo.a里面的Demo函数

在这里插入图片描述

提示:必须导入demo里用到的包,要不然会报错

到此这篇关于go开发中引用静态库.a文件的方法的文章就介绍到这了,更多相关go引用静态库.a文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • golang实现跨域访问的方法

    golang实现跨域访问的方法

    这篇文章主要介绍了golang实现跨域访问的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • 深入了解Go语言中database/sql是如何设计的

    深入了解Go语言中database/sql是如何设计的

    在 Go 语言中内置了 database/sql 包,它只对外暴露了一套统一的编程接口,便可以操作不同数据库,那么database/sql 是如何设计的呢,下面就来和大家简单聊聊吧
    2023-07-07
  • golang中使用proto3协议导致的空值字段不显示的问题处理方案

    golang中使用proto3协议导致的空值字段不显示的问题处理方案

    这篇文章主要介绍了golang中使用proto3协议导致的空值字段不显示的问题处理方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • Go语言怎么使用变长参数函数

    Go语言怎么使用变长参数函数

    本文主要介绍了Go语言怎么使用变长参数函数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • golang使用go mod导入本地包和第三方包的方式

    golang使用go mod导入本地包和第三方包的方式

    这篇文章主要介绍了golang使用go mod导入本地包和第三方包的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • Golang常用的几种密码加密方式分享

    Golang常用的几种密码加密方式分享

    这篇文章给大家介绍了Golang常用的几种密码加密方式,加密有两种方式,一种是直接加密,一种是盐值加密,直接加密指的是将原始密码直接进行加密,盐值加密则是在进行密码加密之前,文中有详细的代码示例,需要的朋友可以参考下
    2023-08-08
  • golang struct扩展函数参数命名警告解决方法

    golang struct扩展函数参数命名警告解决方法

    今天在使用VSCode编写golang代码时,定义一个struct,扩展几个方法,需要的朋友可以参考下
    2017-02-02
  • golang 格式化输入输出操作

    golang 格式化输入输出操作

    这篇文章主要介绍了golang 格式化输入输出操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Go语言同步与异步执行多个任务封装详解(Runner和RunnerAsync)

    Go语言同步与异步执行多个任务封装详解(Runner和RunnerAsync)

    这篇文章主要给大家介绍了关于Go语言同步与异步执行多个任务封装(Runner和RunnerAsync)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-01-01
  • Go语言处理超大字符串型整数加减经典面试详解

    Go语言处理超大字符串型整数加减经典面试详解

    这篇文章主要为大家介绍了Go语言处理超大字符串型整数加减经典面试示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10

最新评论