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