Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building on Ubuntu 16.04 #34

Open
jrobinson-uk opened this issue Jun 30, 2016 · 12 comments
Open

Building on Ubuntu 16.04 #34

jrobinson-uk opened this issue Jun 30, 2016 · 12 comments

Comments

@jrobinson-uk
Copy link

Hi I'm trying to build dl-fldigi on Ubuntu 16.04, I'm certain I've gotten all dependencies installed and am following this guide to installing:

https://ukhas.org.uk/projects:dl-fldigi:build-ubuntu

I have successfully compiled on a Raspberry Pi but my Ubuntu install drops out with this

Makefile:2407: recipe for target 'dl_fldigi-newinstall.o' failed
make[2]: *** [dl_fldigi-newinstall.o] Error 1
make[2]: Leaving directory '/home/james/csdr/dl-fldigi/src'
Makefile:984: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/james/csdr/dl-fldigi/src'
Makefile:469: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

@danielrichman
Copy link
Member

danielrichman commented Jul 24, 2016

It looks like this is because the fltk library has changed, defining a new 'set_active' function, which clashes with a function from upstream fldigi. There's then a second linking problem involving libcrypto that I haven't dug into.

I got it to build with this hacky patch. The proper solution would probably be to rebase and update the version of fldigi we are modifying. But that's unlikely to happen as dl-fldigi doesn't really have a maintainer right now.

diff --git a/m4/build.m4 b/m4/build.m4
index 3a191f7..eff5609 100644
--- a/m4/build.m4
+++ b/m4/build.m4
@@ -25,7 +25,7 @@ $INTL_CFLAGS $PTW32_CFLAGS $BFD_CFLAGS -pipe -Wall -fexceptions $OPT_CFLAGS $DEB
 # LDADD
   FLDIGI_BUILD_LDADD="$PORTAUDIO_LIBS $FLTK_LIBS $X_LIBS $SNDFILE_LIBS $SAMPLERATE_LIBS \
 $PULSEAUDIO_LIBS $HAMLIB_LIBS $PNG_LIBS $CURL_LIBS $XMLRPC_LIBS $INTL_LIBS $PTW32_LIBS $BFD_LIBS $EXTRA_LIBS \
-$SSL_LIBS"
+$SSL_LIBS -lcrypto"

 # CPPFLAGS
   FLARQ_BUILD_CPPFLAGS="-I\$(srcdir) -I\$(srcdir)/include -I\$(srcdir)/fileselector \
diff --git a/src/include/icons.h b/src/include/icons.h
index dc37e22..75918b3 100644
--- a/src/include/icons.h
+++ b/src/include/icons.h
@@ -43,6 +43,7 @@ const char* get_icon_label_text(Fl_Widget* w);
 void free_icon_label(Fl_Menu_Item* item);
 void free_icon_label(Fl_Widget* w);

+#define set_active fldigi_set_active
 void set_active(Fl_Menu_Item* item, bool v);
 void set_active(Fl_Widget* w, bool v);

I haven't tried running it.

@verox-syrion
Copy link

@danielrichman patch works at ubuntu 16.04.2 LTS

Tom SP9UOB

@tonyyates
Copy link

I am having similar issues but the patch doesn't work for me. it looks like there is something wrong with the double_speed_test function but I haven't managed to work out how to resolve.
int retval;
^
CXX dl_fldigi-logbook.o
CXX dl_fldigi-logsupport.o
CXX dl_fldigi-rx_extract.o
CXX dl_fldigi-speak.o
CXX dl_fldigi-main.o
main.cxx: In function ‘double speed_test(int, unsigned int)’:
main.cxx:1198:13: error: invalid conversion from ‘const void*’ to ‘void*’ [-fpermissive]
memset(src.data_in, 0, src.input_frames * sizeof(float));
^
In file included from /usr/include/features.h:367:0,
from /usr/include/inttypes.h:25,
from ./include/util.h:37,
from ./config.h:571,
from main.cxx:27:
/usr/include/x86_64-linux-gnu/bits/string3.h:78:1: note: initializing argument 1 of ‘void* memset(void*, int, size_t)’
__NTH (memset (void *__dest, int __ch, size_t __len))
^
Makefile:2183: recipe for target 'dl_fldigi-main.o' failed
make[2]: *** [dl_fldigi-main.o] Error 1
make[2]: Leaving directory '/home/tony/dl-fldigi/src'
Makefile:984: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/tony/dl-fldigi/src'
Makefile:470: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

@tonyyates
Copy link

@verox-syrion as you have it working, is it possible you would make and distribute a binary?

@verox-syrion
Copy link

verox-syrion commented May 19, 2017 via email

@tonyyates
Copy link

tonyyates commented May 19, 2017 via email

@hosler
Copy link

hosler commented May 21, 2017

Hello. Getting same error when trying to compile on my gentoo laptop. Provided patch did not work for me. Looking forward to getting this resolved so I can use dl-fldigi for my balloon :)

@tonyyates
Copy link

tonyyates commented May 21, 2017 via email

@hosler
Copy link

hosler commented May 21, 2017

i will be available to test whatever you come up with

@verox-syrion
Copy link

verox-syrion commented May 22, 2017 via email

@adamgreig
Copy link
Member

adamgreig commented May 22, 2017

I believe some of the forks -- https://github.com/hexameron/dl-fldigi and https://github.com/jamescoxon/dl-fldigi especially - have a lot of new commits that bring compatibility with latest ubuntu among other things.

@verox-syrion
Copy link

verox-syrion commented May 22, 2017 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants