|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Я открыл новый проект в Visual Studio - Visual C++ -> Cross Platform -> Linux -> Console Application Код: plaintext 1. 2. 3. 4. 5. 6. 7.
какую библиотеку мне подключить, чтоб открыть UDP соединение? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 14:45 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Штатных средств у С/С++ нет, в виндовсе свое API для этого, в линуксе - свое. По большому счету там все достаточно просто: открыл сокет и слушай его. Есть небольшая разница в синтаксисе, но его можно привести к общему знаменателю с помощью препроцессора. Напиши сначала под какую-нибудь ОС, затем подправь под другую. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:02 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7, UDP не предусматривает никаких "соединений". ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:02 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Dima T Штатных средств у С/С++ нет, в виндовсе свое API для этого, в линуксе - свое. По большому счету там все достаточно просто: открыл сокет и слушай его. Есть небольшая разница в синтаксисе, но его можно привести к общему знаменателю с помощью препроцессора. Напиши сначала под какую-нибудь ОС, затем подправь под другую. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52.
сплошные ошибки. авторSeverity Code Description Project File Line Suppression State Error (active) E0020 identifier "bzero" is undefined Error (active) E0070 incomplete type is not allowed Error (active) E0070 incomplete type is not allowed Error (active) E0070 incomplete type is not allowed Error (active) E0070 incomplete type is not allowed Error (active) E0020 identifier "AF_INET" is undefined Error (active) E0070 incomplete type is not allowed Error (active) E0020 identifier "INADDR_ANY" is undefined Error (active) E0070 incomplete type is not allowed Error (active) E0020 identifier "htons" is undefined Error (active) E0020 identifier "socket" is undefined Error (active) E0020 identifier "SOCK_DGRAM" is undefined Error (active) E0020 identifier "bind" is undefined Error (active) E0020 identifier "TNICADataAddr" is undefined Error (active) E0020 identifier "ERROR" is undefined Error (active) E0020 identifier "ioctl" is undefined Error (active) E0020 identifier "FIONBIO" is undefined Error (active) E0020 identifier "ERROR" is undefined Error (active) E0020 identifier "errnoGet" is undefined ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:21 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Надо #include соответствующие. Под виндовс еще WSA инициализировать один раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:25 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Тут пример кода под виндовс. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:28 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Dima T Тут пример кода под виндовс. ругается на #include <winsock.h> не видит может надо указать откуда брать библиотеки? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:32 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Наверно из-за jenya7 Я открыл новый проект в Visual Studio - Visual C++ -> Cross Platform -> Linux -> Console Application Это что-то новое в студии, у меня такого нет в VS2017. Попробуй создать обычный проект "Windows Console Application" ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:37 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 откуда window'ые инклюды в Linux проекте? jenya7 Я открыл новый проект в Visual Studio - Visual C++ -> Cross Platform -> Linux -> Console Application ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:39 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Dima T Наверно из-за jenya7 Я открыл новый проект в Visual Studio - Visual C++ -> Cross Platform -> Linux -> Console Application Это что-то новое в студии, у меня такого нет в VS2017. Попробуй создать обычный проект "Windows Console Application" Это нужно добавлять . Я специально добавил чтоб писать приложение под Линукс. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:40 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Cerebrum я работаю на других платформах с UDP, TCP, TFTP, sockets уже пару лет. в данном случае на инклюды #include <sys/socket.h> #include <netinet/in.h> ругается - не видит их. В тот момент когда проект увидит инклюды нет проблем, я уже все давно написал. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:50 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
скажем #include <sys/types.h> проект видит пошел в папку инклюдов C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\Linux\include нет там socket.h ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 15:59 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 скажем #include <sys/types.h> проект видит пошел в папку инклюдов C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\Linux\include нет там socket.h Linux проект обычно создается для Linux машин даже если ты накидаешь в Windows заголовочных файлов для Linux, то я сильно сомневаюсь, что ты соберешь что-то, в принципе. Даже если соберешь, то хрен запустишь, а значит и отладить не сможешь. Если тебе нужно под Linux, то подними/найди сначала Linux машину, настрой на ней все необходимые компиляторы и библиотеки, ssh, затем настрой в VS отладчик для удаленной разработке на этой Linux машине и только потом, когда у тебя начнет хотя бы собираться Hello World, приступай к работе над UDP. Если у тебя Window 10, то в ней есть подсистема Windows для Linux . Если все это делать лень, то ставь Visual Studio Code на Linux и работай в нативной nix-среде ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 16:14 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Cerebrum Если все это делать лень, то ставь Visual Studio Code на Linux и работай в нативной nix-среде ставить именно на Линукс? они дают несколько опций скачки. Можно скачать и под Windows. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 16:18 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 ставить именно на Линукс? они дают несколько опций скачки. Можно скачать и под Windows. какой смысл ставить Visual Studio Code для Windows, если у тебя, судя по всему, уже целая Visual Studio установлена? Если Linux не принципиален, то бери и пользуйся WinSocket API и забудь про все эти мытарства, только проект создай по нормальному, как тебе уже предложили ранее ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 16:24 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Если для linux, да еще из MSVS. Тогда, может, boost.asio? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 16:29 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Cerebrum jenya7 ставить именно на Линукс? они дают несколько опций скачки. Можно скачать и под Windows. какой смысл ставить Visual Studio Code для Windows, если у тебя, судя по всему, уже целая Visual Studio установлена? Если Linux не принципиален, то бери и пользуйся WinSocket API и забудь про все эти мытарства, только проект создай по нормальному, как тебе уже предложили ранее мне как раз линукс очень принципиален - я должен портировать проект на линукс (с vxWorks). Visual Studio Code это полная среда разработки? а как там к периферии обращаться? у меня на плате есть UART, SPI. можно подключить BSP производителя платы к проекту? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 16:31 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Cerebrum спасибо. выглядит внушительно. остается установить на линуксе и попробовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 17:06 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7мне как раз линукс очень принципиален - я должен портировать проект на линукс (с vxWorks). Тогда зачем ты вообще в Visual Studio полез? Запускай Linux и работай в нём. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 17:29 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov jenya7мне как раз линукс очень принципиален - я должен портировать проект на линукс (с vxWorks). Тогда зачем ты вообще в Visual Studio полез? Запускай Linux и работай в нём. я не знаю как. у меня нет опыта работы в линукс. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 17:34 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7, Может тебе надо кроссплатформенно? Сразу винда и линукс? Тогда Qt есть вариант. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 17:42 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7, Код: plaintext 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 17:44 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
PetroNotC Sharp jenya7, Может тебе надо кроссплатформенно? Сразу винда и линукс? Тогда Qt есть вариант. там такой геморой с этой кроссплатформеностью. я не смог заставить проект компилиться под линукс. это если писать на виндоус. а если установить на линукс то может быть. не проверял. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 17:58 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7, что за приложение у тебя? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 18:16 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
mayton jenya7, что за приложение у тебя? само приложение довольно простое - по UDP получаю команды и в соответсвии с командами обращаюсь к периферии (UART, SPI). приложение должно бежать на плате Kontron SMARC-sAMX6i. я установил на нее YOCTO который предоставил производитель платы. раньше приложение бежало на vxWorks, теперь надо портировать на линукс. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 18:34 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 там такой геморой с этой кроссплатформеностью Нужно IDE для Qt ставить а не студию. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 18:37 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
PetroNotC Sharp jenya7 там такой геморой с этой кроссплатформеностью Нужно IDE для Qt ставить а не студию. а как вы настраиваете на компиляцию под линукс? какой тип проекта нужно выбрать в QT Creator? может я не тот проект выбираю. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 18:52 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Собирать программу под линукс надо на линуксе. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 18:55 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7я работаю на других платформах с UDP, TCP, TFTP, sockets уже пару лет. jenya7я не знаю как. у меня нет опыта работы в линукс. Чисто из любопытства: на каких тогда "других платформах" ты работаешь со всем этим уже пару лет? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 18:57 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
mayton это юникс. там нет гуи. но там я делаю образ и заливаю его через U-Boot по FTP на таргет во флеш. есть среда разработки Wind River, в ней пишу код, компилирую, получаю образ, заливаю. все просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:01 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 а как вы настраиваете на компиляцию под линукс? Можно и там работать, но компилирует медленно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:11 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
PetroNotC Sharp jenya7 а как вы настраиваете на компиляцию под линукс? Можно и там работать, но компилирует медленно. а какой тип проекта - QT Widgets Application или QT Console Application? и чтоб кинуть проект в линукс - там должен быть установлен QT? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:15 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 PetroNotC Sharp пропущено... пишу в creator под виндой. Кидаю проект в линукс. И там creator компилит проект в линукс. Можно и там работать, но компилирует медленно. а какой тип проекта - QT Widgets Application или QT Console Application? и чтоб кинуть проект в линукс - там должен быть установлен QT? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:16 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7есть среда разработки Wind River, в ней пишу код, компилирую И при этом ты до сих пор не научился пользоваться man-ом? Рассказываю технологию: получив ошибку "identifier "bzero" is undefined" выходишь в консоль, набираешь "man bzero". В выдаваемой справке где-то в начале написано в каком заголовке эта функция должна быть объявлена. В данном случае это <strings.h>. Заодно можно почитать остальное и узнать, например, что "эта функция deprecated, используйте memset() в новых программах". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:19 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Barloneи qt и creator А назачем ему это в системе без гуя? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:20 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 какой тип проекта - QT Widgets Application или QT Console Application? В линуксе конечно свой creator ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:23 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Barloneи qt и creator А назачем ему это в системе без гуя?как зачем. Все либы в Qt. Компилит Creator. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:25 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Barloneи qt и creator А назачем ему это в системе без гуя? Так у него вообще какой-то embedded, к нему явно должен прилагаться комплект разработчика, с кросс-компилятором. Вот вопрос - этот кросс-компилятор где запускается? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:28 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Barlone Так у него вообще какой-то embedded, Я так понял, он переписывает начисто в новый проект. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:30 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Barlone Так у него вообще какой-то embedded, Я так понял, он переписывает начисто в новый проект. jenya7 приложение должно бежать на плате Kontron SMARC-sAMX6i. я установил на нее YOCTO который предоставил производитель платы. раньше приложение бежало на vxWorks, теперь надо портировать на линукс. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2019, 19:38 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
PetroNotC Sharp jenya7 какой тип проекта - QT Widgets Application или QT Console Application? В линуксе конечно свой creator так почему не писать сразу в линуксе? а как из QT обращаться к периферии? как подключить BSP производителя? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 09:14 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 так почему не писать сразу в линуксе? Я писал выше. Очень долгая компиляция. Но у меня виртуалка была. Может из за этого. И потом, как тесты для винды делать в линуксе?)))) Банальные пути файлов слэши в разную сторону. Тебе придется тогда из линукса бросать в винду. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 10:28 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 как из QT обращаться к периферии? как подключить BSP производителя? Мы когда то медицинские тест приборы через COM порт сопрягали. У них протокол был ВЫСОКОуровневый. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 10:32 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7, У нас Git есть. Поэтому пиши хоть в винде, хоть маке. Там же коммит в git и всё. Какие проблемы? Компиляция это отдельный процесс и для других людей. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 10:38 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
инсталировал QT на линукс. все пишется, компилируется, бежит. но без доступа к периферии проект абсолютно бесполезен. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 17:29 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 инсталировал QT на линукс. все пишется, компилируется, бежит. но без доступа к периферии проект абсолютно бесполезен. Что ты говоришь загадками. Какая функция сети выдала какую ошибку? socket()?, sendTo() ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 17:58 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
mayton jenya7 инсталировал QT на линукс. все пишется, компилируется, бежит. но без доступа к периферии проект абсолютно бесполезен. Что ты говоришь загадками. Какая функция сети выдала какую ошибку? socket()?, sendTo() ? ошибок нет. я про периферию платы, SPI например. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 18:09 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Вот есть соседний форум. https://www.sql.ru/forum/hardware По железу. Продублируй описание своей проблемы. В терминах понятных для железячников. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 18:10 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 а как из QT обращаться к периферии? как подключить BSP производителя? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 18:15 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
Barlone jenya7 а как из QT обращаться к периферии? как подключить BSP производителя? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 19:24 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 инсталировал QT на линукс. все пишется, компилируется, бежит. но без доступа к периферии проект абсолютно бесполезен. ИМХО ты фигней занимаешься. Для твоего embedded нет готовых решений. Как понимаю у тебя есть работающий проект который надо дополнить работой с UDP, ну так и дополняй, а не начинай с нуля. Там делов на пару десятков строк всего-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2019, 20:22 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
PetroNotC Sharp ...И потом, как тесты для винды делать в линуксе?))))... легко. берёшь кросплатформенный фрэймворк для тестирования под свой язык. например для сей и плюсов - можно взять criterion . через cmake подготавливаешь make, компиляешь всё через созданный make. и вуаля. дольше писать чем потом юзать - там полуавтомат почти :) сам код тестов(про юнит идёт речь) не меняется естественно. хошь под форточками вояй, хошь под линуксом, хошь..... результат одинаков - работает... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2019, 15:17 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
jenya7 ..через U-Boot.... Вам необходимо искать-смотреть сэмплы под ту среду работы под которую надо создавать. т.е. для обращения к периферии вам надо узнать поддерживается ли в данной ОС данный метал. Если нет - путь в дописывании ядра = драйвера, сервисы и иже. Если да - то как заюзать библиотеки прикрывающие данный металл. тупо копипастить код из других осей - не безопасно. помните что при написании кода для подобных случаев накладываются доп. ограничения - конечность ресурсов, скорость выполнения, синхронизация с железом, реал-тайм требования, и т.д. и т.п.. без реального опыта - у Вас долгий и тернистый путь. удачи вам, она вам потребуется (круглый) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2019, 15:23 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
kolobok0 легко. берёшь кросплатформенный фрэймворк для тестирования под свой язык. например для сей и плюсов - можно взять criterion Не уверен что легко. Фреймворк вроде юнит тестирование. А нужно взаимодействие с Осью. То есть интеграционное, комплексное тестирование. Это методы винды - дайВременнуюПапкуОси, дайВременнуюЮзверя, приложения и т.д. У линукса и винды совершенно разные правила размещения ПО. Кроме того, у винды такой бардак в этих правилах. Вернее они меняются от версии к версии очень сильно. Сюда добаить 32, 64 битность и так далее. Уж лучше я на два раза скомпилячу и два раза запущу на двух осях. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2019, 20:36 |
|
Работа с UDP.
|
|||
---|---|---|---|
#18+
лучше прочитать одну книжку http://beej.us/guide/bgnet/translations/bgnet_A4_rus.pdf ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2019, 22:55 |
|
|
start [/forum/topic.php?all=1&fid=57&tid=2017527]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
36ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
75ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 166ms |
0 / 0 |