2015-10-04 3 views
3

Я пытаюсь включить файл заголовок, который существует в /usr/local/WordNet-3.0/include/ в моей программе идетНевозможно включить необходимые заголовочные файлы для программы идет

с использованием этих флагов

// #cgo CFLAGS: -I/usr/local/WordNet-3.0/include 
// #cgo LDFLAGS: /usr/local/WordNet-3.0/lib/libWN.3.dylib 

/* 
#include <stdio.h> 
#include <stdlib.h> 
#include <string.h> 
#include "wn.h" 

static void printlicense() { 
    printf("WordNet License %s\n\n%s", dblicense, license); 
} 
*/ 
import "C" 
import "unsafe" 
import (
     "os" 
) 

, но когда я запускаю свою программу, используя идти бежать, он дает мне следующую ошибку:

«неустранимая ошибка: файл„wn.h“не найден.» Я на ходу 1.5.1.

Любая помощь в отношении того, что я делаю неправильно, будет оценена по достоинству.

EDIT: У меня есть это для работы, копируя файл в моем рабочем каталоге, но я все равно хотел бы знать, что я делал неправильно.

ответ

5

Проведена быстрая проверка на моем месте: вам нужно удалить пустую строку между вашими флагами cgo и кодом C.

Попробуйте это:

// #cgo CFLAGS: -I/usr/local/WordNet-3.0/include 
// #cgo LDFLAGS: /usr/local/WordNet-3.0/lib/libWN.3.dylib 
/* 
#include <stdio.h> 
#include <stdlib.h> 
#include <string.h> 
#include "wn.h" 

static void printlicense() { 
    printf("WordNet License %s\n\n%s", dblicense, license); 
} 
*/ 
import "C" 
import "unsafe" 
import (
     "os" 
) 
+0

Спасибо! Вот и все. –