Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

GMiller
I am working the subject ITP (first attempt at a Debian package). I am following procedure per the 'Debian New Maintainers Guide' and have reached  'dpkg-buildpackage -us -uc'.

The build goes OK down through where '3.0 (quilt)' starts, at which point I receive two types of errors and warnings.

But first I will note that the 'Dream' application has not heretofore included files supporting Autotools (no Makefiles). So, within my limited experience I have written these files presuming they will be required for Debian. I have also added a subdirectory which includes some header files that are necessary to support the FunCube and a Docs subdirectory for added documentation (well, debian too). These sum most of the changes I have made so far. I presume these will somehow appear in difference files, but then I have never done a package before.

Anyway, the first errors are of the general form;    error: cannot represent change to install.sh
                                                                                    new version symlink to /usr/share/automake-1.15/install.sh
                                                                                    old is nonexistant

There are similar errors for the 'compile' and 'missing' files. These files were added per the GNU Autotools.


The warnings are generally like this;     warning:  new empty file '../autoscan.log' not represented in diff
                                                                       executable mode 0755 file of '../configure' not represented in diff

The autoscan.log is likely not needed, but I don't if the mode must be set in the configure files or how to do so. Can I ignore these warnings?



So, could someone with more experience provide suggestions on how to resolve these?

I suspect there will be some compiler errors later, but one bridge at a time...



Garie Miller wb9awa


Take back your privacy. Switch to StartMail.com

Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

Christoph Berg-2
Re: GMiller 2019-01-16 <[hidden email]>
> I am working the subject ITP (first attempt at a Debian package). I am
> following procedure per the 'Debian New Maintainers Guide' and have reached 
> 'dpkg-buildpackage -us -uc'.
>
> The build goes OK down through where '3.0 (quilt)' starts, at which point I
> receive two types of errors and warnings.

Hi Garie,

if the build leaves modified files behind, the next build from the
same directory will fail because dpkg-source complains that those
changes are not properly represented as quilt patches.

For an immediate workaround, you can use dpkg-buildpackage -b to skip
building the source package, and just build the binary packages.

To reset the working directory to what's in the upstream tarball,
either use git operations ("git checkout .", assuming you haven't
commited any of these changes to git), or use "origtargz -u" (from
devscripts) to re-extract the tarball to the current directory
(Warning: this will wipe any changes to upstream files that have not
yet been recorded in debian/patches/).

> But first I will note that the 'Dream' application has not heretofore
> included files supporting Autotools (no Makefiles). So, within my limited
> experience I have written these files presuming they will be required for
> Debian. I have also added a subdirectory which includes some header files
> that are necessary to support the FunCube and a Docs subdirectory for added
> documentation (well, debian too). These sum most of the changes I have made
> so far. I presume these will somehow appear in difference files, but then I
> have never done a package before.

(Not sure how to answer that without seeing the concrete package.)

> The warnings are generally like this;     warning:  new empty file
> '../autoscan.log' not represented in diff
>                                                                       
> executable mode 0755 file of '../configure' not represented in diff
>
> The autoscan.log is likely not needed, but I don't if the mode must be set
> in the configure files or how to do so. Can I ignore these warnings?

Yes, but the above instructions will also remove these.

Christoph DF7CB

Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

GMiller
In reply to this post by GMiller
To: Christoph Berg

TNX Christoph,

As you suggested, I did 'dpkg-buildpackage -b', and it quieted the previous errors and warnings.

It now continues down through a long list where 'make' is the first word (I see no object files produced) to the compiler line, which is:

gcc  -g -02  -fdebug-prefix-map=/home/garie/1021/dream-2.2.0-svn1021=. -fstack-protector-strong -Wformat -Werror=format-security  -Wl,-z,relro -o dream
/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o:  In function '_start':
(.text+0x20): undefined reference to 'main'
collect2: error: ld returned 1 exit status

I believe the 'ld' here refers to the linker. But there is nothing to link yet.

A bit later it also says the Makefile recipe for target all (and all-recursive) failed.

I am unsure how to interpret the first error. I am not a C++ programmer, but it is my understanding that 'main' can be in any subdirectory in C++. In the Dream source a  'main' file is in the GUI-QT subdirectory. This 'main' file includes two functions 'main',  if this is the 'main' referred above. One is for GUI and one for without. I checked a C textbook I found and it says 'one and only one main' . Why the error?  I do have 'main.cpp' listed in the Makefile.am. I can't believe it would be a bug in system file Scrt1.o. What am I missing?

I might also mention that from previous work it also looks like some of the variable definitions are broken, so I am expecting compiler errors later.

Just for information, Dream is being maintained at SourceForge and has a long history going back about two decades. Yes I read elsewhere that Dream works with RTL. I have an RTL but have not modified it for HF yet. That's on the to do list. My motivation is that this seems to be a generally useful (and mature) app, and it seems that if I don't try it for Debian, no one else will. I'm just learning. We will see if it turns out.

Oh yes. In the ITP I made a statement concerning pulseaudio support. On further review I am satisfied that the statement may be disregarded.

TNX AGN

Garie wb9awa






 


Take back your privacy. Switch to StartMail.com

Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

Christoph Berg-2
Re: GMiller 2019-01-18 <[hidden email]>

> It now continues down through a long list where 'make' is the first word (I
> see no object files produced) to the compiler line, which is:
>
> gcc  -g -02  -fdebug-prefix-map=/home/garie/1021/dream-2.2.0-svn1021=.
> -fstack-protector-strong -Wformat -Werror=format-security  -Wl,-z,relro -o
> dream
> /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o:  In
> function '_start':
> (.text+0x20): undefined reference to 'main'
> collect2: error: ld returned 1 exit status
>
> I believe the 'ld' here refers to the linker. But there is nothing to link
> yet.

Hi Garie,

maybe you could put the source package somewhere online so we can have
a closer look. (If it doesn't build, put a tarball of the debian
directory somehere.) Also, include the full build output. Arguing
about short snippets doesn't make much sense because the error might
as well be elsewhere.

If ld complains that "main" is missing, it means that you are trying
to link an executable from a set of .o files that doesn't have a
main() function. In this case, it seems that "set" is empty.

> Just for information, Dream is being maintained at SourceForge and has a
> long history going back about two decades. Yes I read elsewhere that Dream
> works with RTL. I have an RTL but have not modified it for HF yet. That's on
> the to do list. My motivation is that this seems to be a generally useful
> (and mature) app, and it seems that if I don't try it for Debian, no one
> else will. I'm just learning. We will see if it turns out.

Does it compile from the command line, without any dpkg/debian tools?

Christoph

Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

GMiller
In reply to this post by GMiller
To: Christoph Berg

TNX OM

SRI. I may have misinterpreted your statement from Thursday. No, I downloaded the pristine source to work Dream locally, dual-booting to Stretch. Then I worked through the procedure to the dpkg-buildpackage step.

Yes, some more experienced eyes looking at it might help. They might also add general comments on how I did it. Is it acceptable to upload what I have got to http://mentors.debian.net/  following the general procedure 9.1 of the Maintainer's Guide, like I was submitting a done package? I don't know of anywhere else online to park it.

I have not tried the command line without dpkg/debian tools. I doubt it makes any difference.

I may need to add stuff to my Makefile.am's. The only documentation I could find on writing .am's is 'automake-1.15.info'. It gives little direction.

I can give more detail if needed.

73

garie wb9awa

 


Take back your privacy. Switch to StartMail.com

Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

Christoph Berg-2
Re: GMiller 2019-01-22 <[hidden email]>
> I may need to add stuff to my Makefile.am's. The only documentation I could
> find on writing .am's is 'automake-1.15.info'. It gives little direction.

You should probably not be trying to add a new build system to an
existing piece of software. What build system does the package use
originally?

> I can give more detail if needed.

As said, if you don't post your sources anywhere, we can't help much
except by guessing.

Christoph

Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

GMiller
In reply to this post by GMiller
To: Christoph Berg

I believe the existing build system is qmake. Is that acceptable for Debian? If so what procedure do we use to build (like in the Maintainer's Guide or by QtCreator?)

Is it acceptable to post it to http://mentors.debian.net/ ? Is it OK to identify the post by the Bug number so they can recognize it or must I use some other way?

73

garie wb9awa


Re: GMiller 2019-01-22 <[hidden email]>
I may need to add stuff to my Makefile.am's. The only documentation I could
find on writing .am's is 'automake-1.15.info'. It gives little direction.

You should probably not be trying to add a new build system to an
existing piece of software. What build system does the package use
originally?
 
I can give more detail if needed.

As said, if you don't post your sources anywhere, we can't help much
except by guessing.

Christoph
 


Take back your privacy. Switch to StartMail.com

Reply | Threaded
Open this post in threaded view
|

Re: Bug#907576. ITP: dream --A Software Digital Radio Mondiale (DRM) receiver

Christoph Berg-2
Re: GMiller 2019-01-24 <[hidden email]>
> I believe the existing build system is qmake. Is that acceptable for Debian?

Of course it is. The less you mess with the upstream package, the
better.

> If so what procedure do we use to build (like in the Maintainer's Guide or
> by QtCreator?)

Whatever works. In most cases, dh_auto_configure/dh_auto_build will do
the Right Thing.

> Is it acceptable to post it to http://mentors.debian.net/ ? Is it OK to
> identify the post by the Bug number so they can recognize it or must I use
> some other way?

Just upload it. There or anywhere else.

Christoph