猿问

在 Go 程序中使用 C 代码时未声明的标识符

我正在尝试使用从 IRIS 网站下载的库。makefile 包括用于创建动态和静态库的选项。我已经尝试了几个教程,使用 cgo 的两种类型的库,但我没有成功。


这是我的代码


package main

/*

#cgo CFLAGS : -I .

#cgo LDFLAGS: -L . -llibslink

#include <libslink.h>

*/


import (

    "C"

)


func main() {


    C.sl_newslcd()


}

我在目录中有以下文件:


ChangeLog          config.o           globmatch.o        logging.c          slplatform.c       strutils.c

Makefile           doc                gswap.c            logging.o          slplatform.h       strutils.o

Makefile.wat       example            gswap.o            main.go            slplatform.o       unpack.c

Makefile.win       genutils.c         libslink.2.4.dylib msrecord.c         slutils.c          unpack.h

README             genutils.o         libslink.a         msrecord.o         slutils.o          unpack.o

README.md          globmatch.c        libslink.dylib     network.c          statefile.c

config.c           globmatch.h        libslink.h         network.o          statefile.o

我的错误信息如下: go build -v main.go


command-line-arguments

# command-line-arguments

37: error: use of undeclared identifier 'SLCD'

37: error: use of undeclared identifier 'sl_newslcd'


慕运维8079593
浏览 203回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答