У нас есть рабочий код на С ++, который отлично работает на Raspbian, который основан на Debian. Мы хотим преобразовать его в VC ++. Но мы видим проблему, например, как получить библиотеки:
#include <string>
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <string.h>
#include <iostream>
#include <cstdlib>
#include <sys/time.h>
#include <cstring>
#include <sys/ioctl.h>
#include <net/if.h>
using namespace std;
#include "base64.h"
#include <wiringPi.h>
#include <wiringPiSPI.h>
Если я скопирую заголовочные файлы из Raspbian OS, будет ли это работать с VC ++ (Windows 10 IoT) или это создаст проблемы?
Посоветуйте, пожалуйста, как лучше обращаться с библиотеками, которые были использованы выше?
Спасибо
Нет, это не сработает, если вы скопируете файлы из raspbian. Вы должны использовать библиотеку, которая эквивалентна для окон. Например, эквивалент #include <sys/socket.h>
в окнах это #include <winsock2.h>
, Вы можете использовать блоки кода времени компиляции. Например —
#ifdef _WIN32 //true for all windows
#include <winsock2.h>
#else
#include <sys/socket.h>
#endif
Вы также можете написать другие коды, используя этот тип условия. Прежде всего вам необходимо выяснить, какие альтернативы функций и библиотек в окнах вы используете в Debian.
Других решений пока нет …