stackoverflow.com/q/45318603/5819540

аюсь получить доступ к структуре c в cgo, но идти

не удалось определить тип имени для C.utmpx

utmpx - это структура c

вот код go:

/*
#include <stdio.h>
#include <stdlib.h>
#include <utmpx.h>
#include <fcntl.h>
#include <unistd.h>
*/
import "C"

type record C.utmpx

fd, err := os.Open(C._PATH_UTMPX) // this works
fd, err := os.Open(C.UTMPX_FILE)  // error

В файле utmpx.h есть

 #define    _PATH_UTMPX     "/var/run/utmpx"
 #define    UTMPX_FILE  _PATH_UTMPX

Я могу использовать _PATH_UTMPX, но получить то же предупреждение при использовании UTMPX_FILE, почему?

Кажется, я не могу получить доступ к этим переменным, объявленным в файле .h Как я могу это сделать?

платформа: macOS сиррия, го 1.8

Ответы на вопрос(1)

Ваш ответ на вопрос