Comments (4)
There is something already set up in the meson.build:
Line 292 in ec57e74
It also requires to have the 128x64 screen emulation selected a few lines below. We can probably make it a separate target, effectively.
from openrtx.
I just tried to compile the linux target with the module17 UI.
This resultet in an error so we will also need to fix the M17 build with linux.
Compiler Output
$ meson compile -C build_linux openrtx_linux
INFO: autodetecting backend as ninja
INFO: calculating backend command to run: /usr/bin/ninja -C /home/marco/git/OpenRTX/build_linux openrtx_linux
ninja: Entering directory `/home/marco/git/OpenRTX/build_linux'
[16/50] Compiling C object openrtx_linux.p/openrtx_src_core_audio_codec.c.o
../openrtx/src/core/audio_codec.c: In function ‘encodeFunc’:
../openrtx/src/core/audio_codec.c:185:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
185 | pathId iPath = (pathId) arg;
| ^
../openrtx/src/core/audio_codec.c: In function ‘decodeFunc’:
../openrtx/src/core/audio_codec.c:265:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
265 | pathId oPath = (pathId) arg;
| ^
../openrtx/src/core/audio_codec.c: In function ‘startThread’:
../openrtx/src/core/audio_codec.c:406:53: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
406 | ret = pthread_create(&codecThread, NULL, func, ((void *) audioPath));
| ^
../openrtx/src/core/audio_codec.c: At top level:
../openrtx/src/core/audio_codec.c:54:22: warning: ‘micGainPost’ defined but not used [-Wunused-const-variable=]
54 | static const uint8_t micGainPost = 4;
| ^~~~~~~~~~~
../openrtx/src/core/audio_codec.c:53:22: warning: ‘micGainPre’ defined but not used [-Wunused-const-variable=]
53 | static const uint8_t micGainPre = 8;
| ^~~~~~~~~~
[34/50] Compiling C object openrtx_linux.p/openrtx_src_ui_module17_ui.c.o
../openrtx/src/ui/module17/ui.c: In function ‘_ui_calculateLayout’:
../openrtx/src/ui/module17/ui.c:278:9: warning: implicit conversion from ‘symbolSize_t’ to ‘enum <anonymous>’ [-Wenum-conversion]
278 | top_symbol_size,
| ^~~~~~~~~~~~~~~
[50/50] Linking target openrtx_linux
FAILED: openrtx_linux
c++ -o openrtx_linux openrtx_linux.p/openrtx_src_core_state.c.o openrtx_linux.p/openrtx_src_core_threads.c.o openrtx_linux.p/openrtx_src_core_battery.c.o openrtx_linux.p/openrtx_src_core_graphics.c.o openrtx_linux.p/openrtx_src_core_input.c.o openrtx_linux.p/openrtx_src_core_utils.c.o openrtx_linux.p/openrtx_src_core_queue.c.o openrtx_linux.p/openrtx_src_core_chan.c.o openrtx_linux.p/openrtx_src_core_gps.c.o openrtx_linux.p/openrtx_src_core_dsp.cpp.o openrtx_linux.p/openrtx_src_core_cps.c.o openrtx_linux.p/openrtx_src_core_crc.c.o openrtx_linux.p/openrtx_src_core_datetime.c.o openrtx_linux.p/openrtx_src_core_openrtx.c.o openrtx_linux.p/openrtx_src_core_audio_codec.c.o openrtx_linux.p/openrtx_src_core_audio_stream.c.o openrtx_linux.p/openrtx_src_core_audio_path.cpp.o openrtx_linux.p/openrtx_src_core_data_conversion.c.o openrtx_linux.p/openrtx_src_core_memory_profiling.cpp.o openrtx_linux.p/openrtx_src_core_voicePrompts.c.o openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o openrtx_linux.p/openrtx_src_core_voicePromptData.S.o openrtx_linux.p/openrtx_src_rtx_rtx.cpp.o openrtx_linux.p/openrtx_src_rtx_OpMode_FM.cpp.o openrtx_linux.p/openrtx_src_rtx_OpMode_M17.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17DSP.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17Golay.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17Callsign.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17Modulator.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17Demodulator.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17FrameEncoder.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17FrameDecoder.cpp.o openrtx_linux.p/openrtx_src_protocols_M17_M17LinkSetupFrame.cpp.o openrtx_linux.p/openrtx_src_main.c.o openrtx_linux.p/lib_minmea_minmea.c.o openrtx_linux.p/platform_targets_linux_emulator_emulator.c.o openrtx_linux.p/platform_targets_linux_emulator_sdl_engine.c.o openrtx_linux.p/platform_drivers_display_display_libSDL.c.o openrtx_linux.p/platform_drivers_keyboard_keyboard_linux.c.o openrtx_linux.p/platform_drivers_NVM_nvmem_linux.c.o openrtx_linux.p/platform_drivers_GPS_GPS_linux.c.o openrtx_linux.p/platform_mcu_x86_64_drivers_delays.c.o openrtx_linux.p/platform_drivers_baseband_radio_linux.cpp.o openrtx_linux.p/platform_drivers_audio_audio_linux.c.o openrtx_linux.p/platform_targets_linux_platform.c.o openrtx_linux.p/platform_drivers_CPS_cps_io_libc.c.o openrtx_linux.p/openrtx_src_ui_module17_ui.c.o openrtx_linux.p/openrtx_src_ui_module17_ui_main.c.o openrtx_linux.p/openrtx_src_ui_module17_ui_menu.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,--start-group -lm -lreadline -lpulse-simple /usr/lib/libSDL2.so -pthread /usr/lib/libpulse.so /usr/lib/libcodec2.so -Wl,--end-group
/usr/bin/ld: openrtx_linux.p/openrtx_src_ui_module17_ui_menu.c.o: warning: relocation against `mod17CalData' in read-only section `.text'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePrompts.c.o: in function `vp_queueStringTableEntry':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePrompts.c:542:(.text+0xa5e): undefined reference to `currentLanguage'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o: in function `vp_announceRadioMode':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:152:(.text+0x350): undefined reference to `currentLanguage'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:156:(.text+0x365): undefined reference to `currentLanguage'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:160:(.text+0x37a): undefined reference to `currentLanguage'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o: in function `vp_announceError':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:335:(.text+0x878): undefined reference to `currentLanguage'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o: in function `vp_announceText':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:347:(.text+0x8ca): undefined reference to `GetEnglishStringTableOffset'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:351:(.text+0x8da): undefined reference to `currentLanguage'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o: in function `vp_announceCTCSS':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:369:(.text+0x97b): undefined reference to `currentLanguage'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o: in function `vp_announceBank':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:515:(.text+0xe16): undefined reference to `currentLanguage'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o: in function `vp_announceM17Info':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:542:(.text+0xee3): undefined reference to `currentLanguage'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:546:(.text+0xefa): undefined reference to `currentLanguage'
/usr/bin/ld: openrtx_linux.p/openrtx_src_core_voicePromptUtils.c.o:/home/marco/git/OpenRTX/build_linux/../openrtx/src/core/voicePromptUtils.c:578: more undefined references to `currentLanguage' follow
/usr/bin/ld: openrtx_linux.p/openrtx_src_ui_module17_ui.c.o: in function `_ui_changeTxWiper':
/home/marco/git/OpenRTX/build_linux/../openrtx/src/ui/module17/ui.c:594:(.text+0xf0e): undefined reference to `mod17CalData'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/ui/module17/ui.c:594:(.text+0xf1a): undefined reference to `mod17CalData'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/ui/module17/ui.c:597:(.text+0xf21): undefined reference to `mod17CalData'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/ui/module17/ui.c:597:(.text+0xf2e): undefined reference to `mod17CalData'
/usr/bin/ld: /home/marco/git/OpenRTX/build_linux/../openrtx/src/ui/module17/ui.c:598:(.text+0xf37): undefined reference to `mod17CalData'
/usr/bin/ld: openrtx_linux.p/openrtx_src_ui_module17_ui.c.o:/home/marco/git/OpenRTX/build_linux/../openrtx/src/ui/module17/ui.c:598: more undefined references to `mod17CalData' follow
/usr/bin/ld: warning: creating DT_TEXTREL in a PIE
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
from openrtx.
I saw the errors: the Module17 UI code contains some references to a data structure that is defined only in the Module17 code. I'll see how to provide a stub for it in order to make the code compile also under linux
from openrtx.
Fixed the build process with commits 12e2a0f and 6b34bf3. Is now possible to compile OpenRTX linux with the Module17 UI.
from openrtx.
Related Issues (20)
- Discussion: M17: Storing Callsign Data HOT 4
- Feature: Show Volume on Screen HOT 2
- Battery Calculation might underflow HOT 1
- Feature: add T-TWR Plus target into nightly build HOT 5
- Firmware issues with new RT3s models HOT 7
- T-TWR Plus fails to complete the boot sequence when SA868 uses NiceRF firmware HOT 5
- M17 AES support HOT 1
- M17: Noise when not receiving anything HOT 4
- Unable to send 1750Hz tone when keyboard is locked
- Any MotoTRBO feature supported? HOT 2
- M17 underdeviated at 144MHz on MD-UV3x0 HOT 1
- module17 friendly LEDs HOT 2
- T-TWR Plus: Init failure due to sa8x8-fw version mismatch
- "For emergency use press any button" screen appears after flashing. HOT 4
- Module17 no audio for DST ECHO and INFO HOT 2
- Module17 v0.1e fails to shutdown - off pulse too short HOT 5
- Module17 - backlight timer setting does not work HOT 2
- RT3S / MD-UV380 Frequency offset and whistling noises after a Transmission stopped HOT 1
- T-TWR Plus builds failing HOT 4
- Display of M17 destination on MD (and other?) radios HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openrtx.