Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
mickel52
0 / 0 / 0
Регистрация: 05.10.2014
Сообщений: 6
#1

Dsd-master 1.7 для декодирования d-star - C++

15.01.2016, 20:45. Просмотров 336. Ответов 2

здравствуйте уважаемые форумчане, мне нужна помощь в запуске программы через bash в cygwin в windows
но данная программа на данный момент хранится в не скомпилированном варианте. Кто то давно его компилировал под cygwin, но позже удалил
теперь его нужно восстановить.
данная программа позволяет при помощи обыкновенной радиостанции через динамик на частотах d-star, dmr и motorbo (цифровые протоколы радиостанций)
вести полную расшифровку голоса, так как все переходят именно на них и мой аналоговый приемник сканер стал бесполезен (i-com ic-r6)
вот пошагово то, что у меня получилось сделать:

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

библиотеки установлены практически все, если чего-то не будет хватать, он ведь напишет это в bash-э?
в архиве mbelib-master все файлы с расширением в корне .с с помощью команды gcc -c переделал в .o
в архиве dsd-master в корне файлов .c нет
переместил файлы .o из mbelib-master в dsd-master
далее я ввел такой текст, и вот что он выдал:
$ gcc mbelib.o ambe3600x2400.o ambe3600x2450.o ecc.o imbe7100x4400.o imbe7200x44 00.o -o rezult

/usr/lib/gcc/i686-pc-cygwin/4.9.3/../../../libcygwin.a(libcmain.o): In function `main':
/usr/src/debug/cygwin-2.3.1-1/winsup/cygwin/lib/libcmain.c:39: undefined referen
ce to `WinMain@16′
collect2: error: выполнение ld завершилось с кодом возврата 1

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
оригинальная инструкция:

Download the zip archive for dsd-1.7.0 from here: https://github.com/szechyjs/dsd and then unzip the archive,
so that you get the folder dsd-master, which includes all the source files.

2. Download the zip archive for mbelib-1.2.5 from here: https://github.com/szechyjs/mbelib and then unzip the archive,
so that you get the folder mbelib-master, which includes all the source files.

3. Download and install the Cygwin environment. It is important to use the 32 bit version. It will not work with the 64 bit version.
In the installation process, you also have to make sure that you choose gcc (the compiler) for installation.

4. Within the Cygwin command window, use gcc, to compile every .c file within the folders mbelib-master and dsd-master (subfolders can be ignored),
so that you will get an .o file (object file) for each source file.

5. Copy all the resulting .o files from mbelib-master to dsd-master and use gcc again to link all the object files,
so that you will get the final executable dsd.exe.
This final step also has to include the sndfile library from Cygwin being mentioned in the call of gcc, otherwise it will not work.

6. In order to start dsd.exe, it is necessary to copy cygwin1.dll to the same folder, where your built dsd.exe is.
It is very important that the version number of the dll is being lower than 1.7.26, otherwise dsd.exe will crash.
If this is not the case for your dll, you have to find an alternative version from the internet. Additionally,
it may be necessary to copy more dlls, needed by the sndfile library, next to your dsd.exe.
This may depend on your environment variables of your system.

7. For decoding D-Star, you should call DSD like following: dsd -i /dev/dsp -o /dev/dsp -fd

8. For best results, make sure that all your SDR# and VAC sample rates are set to 48kHz and that you have disabled “Filter Audio” in SDR#.
Also, the audio volume of SDR# should not be set to high.

инструкция, переведенная bing translator, но удобнее будет ее просмотреть через google chrome и нажать кнопку перевести

Скачать zip-архив для dsd-1.7.0 отсюда: https://github.com/szechyjs/dsd и затем распакуйте архив,
так что вы получите папку dsd мастер, который включает все исходные файлы.


2. Загрузите zip-архив для mbelib-1.2.5 отсюда: https://github.com/szechyjs/mbelib и затем распакуйте архив,
так что вы получите папку mbelib мастер, который включает все исходные файлы.

3. скачать и установить Cygwin окружающей среды.
Важно использовать 32-разрядную версию. Он не будет работать с 64-разрядной версии. В процессе установки вы также должны убедиться,
что вы выбираете gcc (компилятор) для установки.

4. в окне команд Cygwin gcc,
следует использовать для компиляции каждого .c файла внутри папки mbelib Мастер и dsd мастер (вложенные папки могут быть проигнорированы),
так что вы получите файл .o (объектный файл) для каждого исходного файла.


5. Скопируйте все в результате .o файлы из mbelib мастер dsd Мастер и использование gcc снова,
чтобы связать все объектные файлы, так что вы получите окончательный исполняемый файл dsd.exe.
Это последний шаг также имеет библиотеку sndfile с Cygwin, упоминается в вызове GCC,
в противном случае она не будет работать.

6. для того чтобы начать dsd.exe, необходимо скопировать в ту же папку,
где находится ваш построен dsd.exe cygwin1.dll. Это очень важно, что номер версии DLL-библиотеки в настоящее время ниже,
чем 1.7.26, иначе dsd.exe произойдет сбой. Если это не так для dll, вам придется найти альтернативный вариант из Интернета.
Кроме того это может быть необходимо скопировать более DLL, необходимые библиотеке sndfile, рядом с вашей dsd.exe.
Это может зависеть от ваших переменных среды вашей системы.

7. для декодирования D-Star,
вы должны позвонить DSD как следующее: dsd -i/dev/dsp -o/dev/dsp -fd 8. Для достижения наилучших результатов убедитесь,
что установить все ваши SDR # и VAC дискретизации до 48 кГц и что вы отключили «Фильтр аудио» в SDR #.
Кроме того аудио объем SDR # не следует устанавливать до высокой.

Добавлено через 8 часов 57 минут
вы неправильно переместили тему и не поняли что мне нужно,
мне нужно не написать программу, а разобраться с инструкцией
cygwin это эмулятор linux в среде windows. никакого отношения к C++ он не имеет
работать нужно в bash, тема была размещена правильно!
я радиолюбитель. и декодировать я собираюсь сигналы цифровых радиостанций
мне всего лишь нужно скомпилировать программу из языка си, но разбираться мне в нем не нужно
вот оригинальная статья
http://www.rtl-sdr.com/receiving-dst...d-1-7-windows/
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2016, 20:45     Dsd-master 1.7 для декодирования d-star
Посмотрите здесь:

STAR WARS C++ Builder
Master Class Wizard Visual C++
Построить алгоритм декодирования сообщений закодированных кодом простым повторением C++
C++ Программа кодирования и декодирования
Процессы - Slave и Master C++ WinAPI
Modbus master C++ WinAPI
Ребятушки, у кого-ниудь есть алгоритм кодирования и декодирования по Хаффману? C++
C++ Builder Создать программу кодирования и декодирования секретных сообщений
Написать программу кодирования/декодирования строки C++
C++ Реализовать процесс декодирования кода Голея

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
tezaurismosis
Администратор
Эксперт .NET
6712 / 3097 / 481
Регистрация: 17.04.2012
Сообщений: 7,762
Записей в блоге: 14
18.01.2016, 12:01     Dsd-master 1.7 для декодирования d-star #2
Цитата Сообщение от mickel52 Посмотреть сообщение
работать нужно в bash, тема была размещена правильно!
Прежде чем в нём работать, вам нужно его скомпилировать, что и не получается.
Добавьте флаг, что используется Windows GUI
Bash
1
gcc mbelib.o ambe3600x2400.o ambe3600x2450.o ecc.o imbe7100x4400.o imbe7200x44 00.o -o rezult -mwindows
или
Bash
1
gcc mbelib.o ambe3600x2400.o ambe3600x2450.o ecc.o imbe7100x4400.o imbe7200x44 00.o -o rezult -Wl,-subsystem,windows
mickel52
0 / 0 / 0
Регистрация: 05.10.2014
Сообщений: 6
19.01.2016, 15:11  [ТС]     Dsd-master 1.7 для декодирования d-star #3
Простите, действительно признаю, тема размещена правильно.
выдает ту же ошибку.
Нашел похожую проблему на одном из форумов.

на всякий случай доставил все библотеки debug. Увесисто получилось.
Результат с добавкой тот же

Михаил@Tarantul-PRO /dsd-master
$ gcc mbelib.o ambe3600x2400.o ambe3600x2450.o ecc.o imbe7100x4400.o imbe7200x4400.o -o rezult -mwindows
/usr/lib/gcc/i686-pc-cygwin/4.9.3/../../../libcygwin.a(libcmain.o): In function `main':
/usr/src/debug/cygwin-2.3.1-1/winsup/cygwin/lib/libcmain.c:39: undefined reference to `WinMain@16'
collect2: ошибка: выполнение ld завершилось с кодом возврата 1

Михаил@Tarantul-PRO /dsd-master
$ gcc mbelib.o ambe3600x2400.o ambe3600x2450.o ecc.o imbe7100x4400.o imbe7200x4400.o -o rezult -Wl,-subsystem,windows
/usr/lib/gcc/i686-pc-cygwin/4.9.3/../../../libcygwin.a(libcmain.o): In function `main':
/usr/src/debug/cygwin-2.3.1-1/winsup/cygwin/lib/libcmain.c:39: undefined reference to `WinMain@16'
collect2: ошибка: выполнение ld завершилось с кодом возврата 1

Могу предоставить доступ по team viewer.

Добавлено через 20 часов 11 минут
попробовал на другом компьютере с x86 windows 7. ошибка та же.
Yandex
Объявления
19.01.2016, 15:11     Dsd-master 1.7 для декодирования d-star
Ответ Создать тему
Опции темы

Текущее время: 11:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru