Как использовать заголовки Linux в Windows с помощью Cygwin?

#c #linux #cygwin #cross-compiling

Вопрос:

После установки Cygwin я нашел все инструменты, которые меня удовлетворяют, в соответствующих каталогах. Но я не могу понять, как скомпилировать код C с использованием заголовков, таких как mman.h и dlfcn.h, которые являются заголовками, специфичными для Linux ?

Комментарии:

1. Cygwin предоставляет API Posix, но не является Linux.

2. Может быть, вы хотите, чтобы Linux размещался в Windows с использованием WSL ? (Я думаю, что и Cygwin, и WSL являются отличными средствами для Windows и дополняют друг друга, служа разным целям.)

3. Windows 8.1 не поддерживает WSL, и это та ОС, которую я использую.

Ответ №1:

Быстрый поиск в индексных отчетах пакета cygwin mman.h в основном пакете cygwin-devel и dlfcn.h в пакете mingw64-x86_64-dlfcn.

Комментарии:

1. Да, но когда я включаю их в код и компилирую с помощью gcc в терминале Cygwin, я получаю ошибки.

2. Какого рода ошибки? «не удается открыть файл», или какая-то ожидаемая функциональность недоступна, или что-то еще?

3. Спасибо, все разрешилось. Я не перезапустил свой терминал Cygwin после обновления пакетов 😉