Bug 21830 - ghpsdr3-alex SDR sofware for amateur radio
Summary: ghpsdr3-alex SDR sofware for amateur radio
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: Cauldron
Hardware: All Linux
Priority: Normal enhancement
Target Milestone: ---
Assignee: Barry Jackson
QA Contact:
URL: http://napan.ca/ghpsdr3/index.php/Mai...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-11 02:55 CEST by Forrest White
Modified: 2017-10-28 10:18 CEST (History)
3 users (show)

See Also:
Source RPM: ghpsdr3-alex
CVE:
Status comment:


Attachments
Cauldron build log (93.56 KB, text/plain)
2017-10-19 23:58 CEST, Barry Jackson
Details
spec used for cauldron build attempt (4.04 KB, text/plain)
2017-10-20 00:01 CEST, Barry Jackson
Details
ghpsdr-alex log (267.07 KB, text/plain)
2017-10-27 22:40 CEST, Forrest White
Details

Description Forrest White 2017-10-11 02:55:13 CEST
Description of problem:
tried to build opensuse src.rpms multiple errors mainly ghpsdr3-alex all apps
listed are used


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
Comment 1 Jani Välimaa 2017-10-11 15:38:30 CEST
And what's the issue here? Are we missing some pkgs?
Marja Van Waes 2017-10-11 22:07:21 CEST

Keywords: (none) => NEEDINFO
CC: (none) => marja11, zen25000

Comment 2 Forrest White 2017-10-19 02:34:24 CEST
wants fftw3 but is already installed build fails in the configure stage
Comment 3 Forrest White 2017-10-19 02:39:47 CEST
configure: error: 
-----------------------------------
  The fftw3 library and header file required to build ghpsdr3.
-----------------------------------
Comment 4 Barry Jackson 2017-10-19 23:57:04 CEST
(In reply to Forrest White from comment #3)
> configure: error: 
> -----------------------------------
>   The fftw3 library and header file required to build ghpsdr3.
> -----------------------------------

That is not the issue.
There is an autotools problem but I can't resolve it, and I really don't have time to spend on this just now.

The Cauldron build log is attached below for you, along with the spec as I have started to modify it for Mageia.

Maybe you or someone else can get a bit further.
Comment 5 Barry Jackson 2017-10-19 23:58:09 CEST
Created attachment 9739 [details]
Cauldron build log
Comment 6 Barry Jackson 2017-10-20 00:01:18 CEST
Created attachment 9740 [details]
spec used for cauldron build attempt
Comment 7 Barry Jackson 2017-10-20 00:12:39 CEST
If you search the log for "error:" you will see the problem, which as far as I understand should be fixed by autoreconf -vif which was/is in the spec.

I tried patching configure.ac with

-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([foreign])

..as was suggested by a contributor to another similar bug but it made no difference. (Patch3 in the log now removed from spec)

I will email the suse packager in case he has any suggestions.
Barry Jackson 2017-10-20 00:42:54 CEST

Keywords: NEEDINFO => (none)
Summary: multiple used hamradio apps => ghpsdr3-alex SDR sofware for amateur radio

Comment 8 Forrest White 2017-10-20 22:53:23 CEST
thank you for the attempt i am not a programmer but your help is greatly appreciated.
Forrest White 2017-10-20 22:53:41 CEST

CC: (none) => forrestw

Comment 9 Marja Van Waes 2017-10-21 18:05:14 CEST
Assigning this package request to all packagers collectively. On a voluntary basis, one of them might, if there are no license or other legal issues, want to integrate it to the distribution and maintain it for bug and security fixes.

You might also want to join the packager team to maintain this piece of software: see https://wiki.mageia.org/en/Becoming_a_Mageia_Packager

Source RPM: (none) => ghpsdr3-alex
URL: http://widehat.opensuse.org/repositories//hamradio/openSUSE_Factory_ARM/src/ => http://napan.ca/ghpsdr3/index.php/Main_Page
Ever confirmed: 0 => 1
Status: UNCONFIRMED => NEW

Comment 10 Barry Jackson 2017-10-23 01:56:53 CEST
With help from Walter DL8FCL I now have working builds for Cauldron and Mga6 so in the next few days I will import a dependency and this package to Cauldron.

Assignee: bugsquad => zen25000

Comment 11 Barry Jackson 2017-10-25 18:33:01 CEST
ghpsdr3-alex is now in Cauldron.

After installation launching qtradio from the menu works mostly OK, with the half dozen or so German installations. 
I have not tested any a local server using sdr hardware.

Please test and report any bugs here.

I do not intend to backport this for Mageia6 but if anyone wants it I can email a link to my private repo where Mageia 6 versions will be available for i586 and x86_64 but not arm.

Closing this as fixed.


@Forrest

If there is another specific package that you really feel would be of benefit to users, then please create another enhancement bug report with a summary format similar to this one with as much detail as possible.

Status: NEW => RESOLVED
Resolution: (none) => FIXED

Comment 12 Forrest White 2017-10-25 21:37:47 CEST
thank you for all your work... i would like to build this on mga6 if possible
Comment 13 Barry Jackson 2017-10-26 12:34:36 CEST
For Mga6 you can use the Mga7 src.rpms for:
ortp9 and ghpsdr3-alex.
In a Mga6 client build ortp9 and install ortp9-devel, then build ghpsdr3-alex.
Comment 14 Forrest White 2017-10-26 21:28:33 CEST
the build failed contents of log file rom /var/tmp/rpm-tmp.R3hjOM

#!/bin/sh

  RPM_SOURCE_DIR="/home/fwhite/rpmbuild/SOURCES"
  RPM_BUILD_DIR="/home/fwhite/rpmbuild/BUILD"
  RPM_OPT_FLAGS="-O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4"
  RPM_LD_FLAGS=""
  RPM_ARCH="x86_64"
  RPM_OS="linux"
  export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_LD_FLAGS RPM_ARCH RPM_OS
  RPM_DOC_DIR="/usr/share/doc"
  export RPM_DOC_DIR
  RPM_PACKAGE_NAME="ghpsdr3-alex"
  RPM_PACKAGE_VERSION="4.13"
  RPM_PACKAGE_RELEASE="0.20170125.1.mga6"
  export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE
  LANG=C
  export LANG
  unset CDPATH DISPLAY ||:
  RPM_BUILD_ROOT="/home/fwhite/rpmbuild/BUILDROOT/ghpsdr3-alex-4.13-0.20170125.1.mga6.x86_64"
  export RPM_BUILD_ROOT
  
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:/usr/lib64/pkgconfig:/usr/share/pkgconfig"
  export PKG_CONFIG_PATH
  
  set -x
  umask 022
  cd "/home/fwhite/rpmbuild/BUILD"
cd 'ghpsdr3-alex-20170125'
[           1      -eq 1 ] || exit 0 
[           1      -eq 1 ] || exit 0 

autoreconf -vfi


  
  
  CFLAGS="${CFLAGS:--O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4}" ; export CFLAGS ; 
  CXXFLAGS="${CXXFLAGS:--O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4}" ; export CXXFLAGS ; 
  FFLAGS="${FFLAGS:--O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4}" ; export FFLAGS ; 
  LDFLAGS="${LDFLAGS:- -Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags}" ; export LDFLAGS 
  CONFIGURE_TOP="${CONFIGURE_TOP:-.}"; 
  /usr/lib/rpm/mageia/force-as-needed-for-shared-lib-in-libtool ; 
  /usr/lib/rpm/mageia/drop-ld-no-undefined-for-shared-lib-modules-in-libtool ; 
  /usr/lib/rpm/mageia/fix-libtool-ltmain-from-overlinking ; 
  /usr/lib/rpm/mageia/fix-libtool-from-moving-options-after-libs $CONFIGURE_TOP ; 
  /usr/lib/rpm/mageia/fix-dlsearch-path-in-libtool-for-multilib $CONFIGURE_TOP lib64 ; 
   
  [ -f $CONFIGURE_TOP/configure.in -o -f $CONFIGURE_TOP/configure.ac ] && 
  CONFIGURE_XPATH="--x-includes=/usr/include --x-libraries=/usr/lib64" 
  $CONFIGURE_TOP/configure --build=x86_64-mageia-linux-gnu \
 	--prefix=/usr \
	--exec-prefix=/usr \
	--bindir=/usr/bin \
	--sbindir=/usr/sbin \
	--sysconfdir=/etc \
	--datadir=/usr/share \
	--includedir=/usr/include \
	--libdir=/usr/lib64 \
	--libexecdir=/usr/libexec \
	--localstatedir=/var \
	--sharedstatedir=/var/lib \
	--mandir=/usr/share/man \
	--infodir=/usr/share/info \
    $CONFIGURE_XPATH

/usr/bin/make -O -j4


exit 0
Comment 15 Barry Jackson 2017-10-26 22:01:09 CEST
Hi,
The build log is /home/fwhite/rpmbuild/SPECS/log.ghpsdr3-alex
if you can't figure out the error from it then add it here as an *attachment* please don't paste it ;)
Comment 16 Forrest White 2017-10-27 02:24:41 CEST
(In reply to Barry Jackson from comment #15)
> Hi,
> The build log is /home/fwhite/rpmbuild/SPECS/log.ghpsdr3-alex
> if you can't figure out the error from it then add it here as an
> *attachment* please don't paste it ;)

there is no file in specs but .spec files is there a command option i can pass to rpmbuild --bb  ghpsdr3-alex.spec to produce a lof file? also there is no add attachment option my only other recourse is pastebin once i am able to create a log file
Comment 17 Barry Jackson 2017-10-27 18:48:31 CEST
OK, I have not used rpmbuild directly like that for years, so can you please install bm which is a Mageia build tool.

After installing bm create a directory in your home folder called ghpsdr3-alex and copy the ghpsdr3-alex src.rpm that you downloaded from the mirror into it.

Then copy the little script below as src2tree into /usr/local/bin and make it executable:
su
chmod +x /usr/local/bin/src2tree
exit

cd into ~/ghpsdr3-alex and run the command:

src2tree

Make sure your system is up to date.

Now run bm -l

Let me know how you get on. The log will be in ~/ghpsdr3-alex/SPECS/

#!/bin/bash
#src2tree
#######################
# Usage:-
# Create a dir named as packagename
# Copy the packagename.src.rpm into it
# cd into the packagename directory
# run src2tree
#######################
# Create rpm build tree structure
mkdir -p  BUILD BUILDROOT RPMS SRPMS SOURCES SPECS
# Extract files from src.rpm
ark -b *.rpm > /dev/null 2>&1
# Move files into tree
mv *.spec SPECS/
mv *.rpm SRPMS/
for i in * ; do
[[ -f $i ]] && mv $i SOURCES/
done
tree
# End of script
Comment 18 Forrest White 2017-10-27 21:43:48 CEST
ok got the log file not sure what i am looking for
Comment 19 Barry Jackson 2017-10-27 22:18:52 CEST
OK *attach* it here.
Search this page for "Add an attachment"
Comment 20 Forrest White 2017-10-27 22:40:30 CEST
Created attachment 9762 [details]
ghpsdr-alex log

here is the log file
Comment 21 Barry Jackson 2017-10-28 01:07:39 CEST
OK thanks,
You have unwanted -devel packages installed. Do this:

su
urpme lib64uhd-devel lib64qt4-devel
exit

Now run the build again. i.e. just cd into ~/ghpsdr3-alex and

bm -l

FYI When packages are built by the Mageia build system they are built in a minimal system running in a chroot. Only the packages set as BuildRequires: in the spec are added to that system.
I test build the same way so that there is no chance of unwanted installed packages causing packages not to build that should, and packages to build that should not.

In this case a mix-up between qt4 and qt5 was causing one problem, and also the uhd devel files were being detected during the build so it was trying to build for usrp and we know that this is currently broken.

I hope that helps :)
Comment 22 Barry Jackson 2017-10-28 01:17:09 CEST
Sorry - reading your log again - you only have the qt4/5 issue not the uhd one.
I had that here when I tested in my Mga6 installation and did not re-read your log to check ;)
Comment 23 Forrest White 2017-10-28 04:40:45 CEST
the build completed qtradio works fine but ghpsdr-launcher tries to load but get missing ghpsdr3-mgr.py
Comment 24 Barry Jackson 2017-10-28 10:18:53 CEST
(In reply to Forrest White from comment #23)
> the build completed qtradio works fine but ghpsdr-launcher tries to load but
> get missing ghpsdr3-mgr.py

If you read the notes in the spec then IIRC it mentions that the mgr is obsolete and that it's now preferable to start the server(s) manually, hence the %exclude... lines in %files.

As I said previously I have not yet tested any of the servers, and I will only have rtl-sdr hardware to test with when I do.
I have not even looked at how the servers are started/stopped or configured.

If you have the hardware then please test if you can.

Glad your build now works and that qtradio is working for you.

Note You need to log in before you can comment on or make changes to this bug.