Opened 7 years ago

Closed 7 years ago

#54306 closed defect (fixed)

installing gnuradio-devel with +debug option

Reported by: vamsi765 Owned by: michaelld (Michael Dickens)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: gnuradio-devel

Description (last modified by mf2k (Frank Schima))

I'm trying to install latest gnuradio developer edition with all related options

sudo port install gnuradio-devel +zeromq +ctrlport +performance_counters +debug

I run into the following error:

Error: Failed to extract gnuradio-devel: 

ERROR:
 In order to install this port as +debug,
Qt4 must also be installed with +debug.

By the way, rest of the options work:

sudo port install gnuradio-devel +zeromq +ctrlport +performance_counters

Attachments (1)

Screen Shot 2017-06-12 at 8.49.34 PM.png (31.6 KB) - added by vamsi765 7 years ago.

Download all attachments as: .zip

Change History (13)

comment:1 Changed 7 years ago by mf2k (Frank Schima)

Keywords: gnuradio removed
Owner: set to michaelld
Status: newassigned

In the future, please use WikiFormatting and Cc the port maintainers (port info --maintainers gnuradio-devel).

comment:2 Changed 7 years ago by mf2k (Frank Schima)

Description: modified (diff)

comment:3 Changed 7 years ago by michaelld (Michael Dickens)

Qt4 wants you to install it using +debug, in order to use its debug libraries with GNU Radio. This requirement seems a little over the top to me: Why not allows dependent ports to use the debug libraries if installed and not otherwise?

Can you do a test? Edit the file "$(port dir gnuradio)/../../_resources/port1.0group/qt4-1.0.tcl" (maybe with sudo), and remove the initial chunk of code:

# check for +debug variant of this port, and make sure Qt was
# installed with +debug as well; if not, error out.
platform darwin {
    pre-extract {
        if {[variant_exists debug] && \
            [variant_isset debug] && \
           ![info exists building_qt4]} {
            if {![file exists ${qt_frameworks_dir}/QtCore.framework/QtCore_debug]} {
                return -code error "\n\nERROR:\n\
In order to install this port as +debug,
Qt4 must also be installed with +debug.\n"
            }
        }
    }
}

Then try:

sudo port clean gnuradio-devel
sudo port install gnuradio-devel +debug

and see if that works.

comment:4 Changed 7 years ago by vamsi765

what is the folder directory for GNURadio port? $(port dir gnuradio)

comment:5 Changed 7 years ago by michaelld (Michael Dickens)

I don't know what the folder directory for the GNURadio port is. That's why I say to use $(port dir gnuradio) since it will always work.

comment:6 Changed 7 years ago by vamsi765

Aah, okay. I thought you put that as place holder.
But I didn't find any file in that particular folder[the folder doesn't exist].

> ls $(port dir gnuradio)/../../_resources/port1.0group/qt4-1.0.tcl
ls: /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/science/gnuradio/../../_resources/port1.0group/qt4-1.0.tcl: No such file or directory
> ls $(port dir gnuradio)/../../_resources/port1.0group/
ls: /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/science/gnuradio/../../_resources/port1.0group/: No such file or directory
> ls $(port dir gnuradio)/../../_resources/
macports1.0	port1.0
> ls $(port dir gnuradio)/../../_resources/port1.0
fetch				livecheck			variant_descriptions.conf
group				package
> ls $(port dir gnuradio)/../../_resources/macports1.0
xcode_versions.ini

comment:7 Changed 7 years ago by michaelld (Michael Dickens)

Sorry: port1.0group -> port1.0/group, so: $(port dir gnuradio)/../../_resources/port1.0/group/qt4-1.0.tcl

comment:8 Changed 7 years ago by vamsi765

Got it. Now the port got installed.
What do you think is the right fix?

comment:9 Changed 7 years ago by michaelld (Michael Dickens)

I think the right fix is to move the deleted code into the qmake 1.0 portgroup, since I think this is a QMake issue. It's not a CMake issue.

Does the installed GNU Radio +debug actually do anything useful for you -- i.e., can you use it for debugging using gdb or lldb?

Changed 7 years ago by vamsi765

comment:10 Changed 7 years ago by vamsi765

The fix works. I see the instructions using lldb! Thanks!

comment:11 Changed 7 years ago by michaelld (Michael Dickens)

Thanks for the feedback. I'll look into moving that script segment from qt4 to qmake. Seems like the way to go, at least on my first thinking about this.

comment:12 Changed 7 years ago by michaelld (Michael Dickens)

Resolution: fixed
Status: assignedclosed

Done.

Note: See TracTickets for help on using tickets.