【发布时间】:2020-04-17 19:45:24
【问题描述】:
进入项目结构
src
test.go
testc/collection/linkedlist.h
testc/collection/linkedlist.c
test.go
package main
// #cgo CFLAGS: -g -Wall
// #include <stdlib.h>
// #include "testc/collection/linkedlist.h"
import "C"
func main() {
C.insertFirst(1,10);
C.insertFirst(2,20);
C.insertFirst(3,30);
C.insertFirst(4,1);
C.insertFirst(5,40);
C.insertFirst(6,56);
C.printList();
}
链表.h
#include <stdbool.h>
#ifndef TEST_LINKEDLIST_H
#define TEST_LINKEDLIST_H
struct node {
int data;
int key;
struct node *next;
};
struct node * getHeader();
void printList();
void insertFirst(int key, int data);
struct node* deleteFirst();
bool isEmpty();
int length();
struct node* find(int key);
struct node* delete(int key);
void sort();
void reverse(struct node** head_ref);
//void testList();
#endif //TEST_LINKEDLIST_H
错误
# command-line-arguments
d:/gcc-9.2.0-no-debug/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: $WORK\b001\_x002.o: in function `_cgo_8b2a34aa27ef_Cfunc_insertFirst':
/tmp/go-build/cgo-gcc-prolog:62: undefined reference to `insertFirst'
d:/gcc-9.2.0-no-debug/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: $WORK\b001\_x002.o: in function `_cgo_8b2a34aa27ef_Cfunc_printList':
/tmp/go-build/cgo-gcc-prolog:74: undefined reference to `printList'
collect2.exe: error: ld returned 1 exit status
# command-line-arguments
cgo-gcc-prolog: In function '_cgo_8b2a34aa27ef_Cfunc_printList':
cgo-gcc-prolog:72:49: warning: unused variable '_cgo_a' [-Wunused-variable]
【问题讨论】:
-
能否提供完整的源代码以重现错误?
-
您找到解决方案了吗?