C调用GO的动态链接库

原创 2016年08月30日 11:57:12

1) GO源代码

[root@test129 test]# cat hello.go

package main

 

import "C"

 

//export Hello

func Hello() string {

       return "Hello"

}

 

func main() {

}

}

2) 编译GO动态链接库

gobuild -v -x -buildmode=c-shared -o libhello.so

会生成libhello.h、libhello.so两个文件。

3) C源代码

[root@test129 test]# cat test.c

#include<stdio.h>

#include "libhello.h"

void main()

{

       printf("%s in C\n", Hello());

}

4) 编译C可执行程序

gcc test.c -lhello -o test



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

golang go语言与C语言互调,通过cgo

golang go语言与C语言互调,通过cgo.

GO中调用C代码(CGO)中的坑

GO中调用C代码(CGO)中的坑GO中调用C代码CGO中的坑 背景 问题重现 问题解决背景网上有很多讲解使用CGO实现GO中调用C代码的博客。总结起来,Go中调用C一共有两种办法: 第一种是将C代码直...

golang之cgo---调用C/C++动态库函数

之前说过golang调用C代码的方式可以通过cgo或者是swig,而cgo是不能使用C++相关的东西的,比如标准库或者C++的面向对象特性。怎么办,将c++的功能函数封装成C接口,然后编译成动态库,或...

Go中使用动态库C/C++库

最近需要做一些在go中使用动态C++库的工作,经常碰到 示例代码目录结构(假设代码根目录为/home/gdc/cgotest): ----|bin: ----|pkg ----|src --...

go动态调用方法

package main import ( "fmt" "reflect" ) type X struct{} func (X) Test(x, y int) (i...

GO1.8特性---plugin(go 动态库)

简介: 在go1.8出现以前,一直觉得go语言不能像C/C++一样可以使用动态库的方式动态修改服务。每次升级操作都不得不重新编译整个工程,重新部署服务。这对于很多比较重型的服务来说是一个很致...

Java调用C/C++编写的第三方dll动态链接库(非native API)--- JNI

http://www.cnblogs.com/AnnieKim/archive/2012/01/01/2309567.html    最近在用weka做一个数据挖掘相关的项目,不得不说,weka还...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)