Podczas kompilacji wyklucz pliki źródłowe go według architektury

Piszę program Go dla Windows, który zawiera kilka pakietów. Jeden z tych pakietów używa CGo do wywołania kilku funkcji zdefiniowanych w niektórych plikach .h i .c. Te pliki .c zależą od systemu windows.h.

Ponieważ rozwijanie na platformie Windows jest niezwykle żmudne, chciałbym zrobić makietę funkcji w tym pliku i zamiast tego rozwijać się na Linuksie. Ale kiedy próbuję skompilować, otrzymuję:

fatal error: windows.h: No such file or directory

Ponieważ narzędzie go próbuje skompilować pliki zależne od systemu Windows. Czy jest jakiś sposób na to? Wiem, że coś takiego kładę

#ifdef ..
import x
#endif

nie jest najlepszą praktyką, ale w tym przypadku potrzebuję czegoś, co pozwoli na skompilowanie tylko plików „Linux”.

questionAnswers(1)

yourAnswerToTheQuestion