JvanKatwijk / swradio-8

shortwave receiver for use with sdrplay, hackrf, dabsticks and pmsdr
GNU General Public License v2.0
76 stars 18 forks source link

build problem on Ubuntu 24.04 #18

Closed j75 closed 1 week ago

j75 commented 1 month ago

Hi!

I'm trying to build the application on Ubuntu 24.04 (and waiting for the AppImage...) and I stumble on the following errors:

/usr/bin/ld: CMakeFiles/swradio-9.dir/decoders/drm-decoder/equalizer/equalizer-1.cpp.o: in function `equalizer_1::equalize(std::complex<float>*, short, myArray<ourSignal>*, float*, float*, float*, std::vector<std::complex<float>, std::allocator<std::complex<float> > >&)':
/.../decoders/drm-decoder/equalizer/equalizer-1.cpp:403:(.text+0x2217): undefined reference to `estimator_2::estimate(std::complex<float>*, std::complex<float>*, std::vector<std::complex<float>, std::allocator<std::complex<float> > >&)'

Any idea how to fix that?

j75 commented 1 month ago

Another error message:

decoders/drm-decoder/ofdm/freqsyncer.cpp: In member function 'int32_t freqSyncer::get_zeroBin(int16_t)':
/.../decoders/drm-decoder/ofdm/freqsyncer.cpp:180:16: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'class std::complex<float>'; use assignment or value-initialization instead [-Wclass-memaccess]
  180 |         memset (correlationSum, 0, Tu * sizeof (std::complex<float>));
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /.../decoders/drm-decoder/basics.h:29,
                 from /.../decoders/drm-decoder/ofdm/freqsyncer.h:27,
                 from /.../decoders/drm-decoder/ofdm/freqsyncer.cpp:28:
/usr/include/c++/13/complex:1344:11: note: 'class std::complex<float>' declared here
 1344 |     class complex<float>
      |           ^~~~~~~~~~~~~~
JvanKatwijk commented 1 month ago

I uploaded the sources of the version that I am using, and that compiles fine under Fedora and U20

Op zo 19 mei 2024 om 08:36 schreef j75 @.***>:

Another error message:

decoders/drm-decoder/ofdm/freqsyncer.cpp: In member function 'int32_t freqSyncer::get_zeroBin(int16_t)': /.../decoders/drm-decoder/ofdm/freqsyncer.cpp:180:16: warning: 'void memset(void, int, size_t)' clearing an object of non-trivial type 'class std::complex'; use assignment or value-initialization instead [-Wclass-memaccess] 180 | memset (correlationSum, 0, Tu * sizeof (std::complex)); | ~^~~~~~~~~~~~ In file included from /.../decoders/drm-decoder/basics.h:29, from /.../decoders/drm-decoder/ofdm/freqsyncer.h:27, from /.../decoders/drm-decoder/ofdm/freqsyncer.cpp:28: /usr/include/c++/13/complex:1344:11: note: 'class std::complex' declared here 1344 | class complex | ^~~~~~

— Reply to this email directly, view it on GitHub https://github.com/JvanKatwijk/swradio-8/issues/18#issuecomment-2119121735, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACCPHQACSFUINXNI4MBYVS3ZDBB77AVCNFSM6AAAAABH4KR5VSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJZGEZDCNZTGU . You are receiving this because you are subscribed to this thread.Message ID: @.***>

-- Jan van Katwijk

j75 commented 1 week ago

OK, so it should be built on Ubuntu 20.? Anyhow, the AppImage works on U24.04 so I can hereby declare the case closed.

JvanKatwijk commented 1 week ago

The swradio compiles fine on U20 and U22 - I do not have an U34 installed. It is annoying that it does not seem to compile on U24. Can you send me the output of what is generated when trying to build it

Op za 22 jun 2024 om 12:40 schreef j75 @.***>:

OK, so it should be built on Ubuntu 20.? Anyhow, the AppImage works on U24.04 so I can hereby declare the case closed.

— Reply to this email directly, view it on GitHub https://github.com/JvanKatwijk/swradio-8/issues/18#issuecomment-2183975683, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACCPHQALD6NAGZ7XZBQJNUTZIVIB5AVCNFSM6AAAAABH4KR5VSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBTHE3TKNRYGM . You are receiving this because you commented.Message ID: @.***>

-- Jan van Katwijk