Opened 8 years ago

Closed 7 years ago

#54015 closed defect (fixed)

qwt52 @5.2.3: sh: ./configure: No such file or directory

Reported by: Ortner Owned by: michaelld (Michael Dickens)
Priority: Normal Milestone:
Component: ports Version: 2.4.1
Keywords: Cc:
Port: qwt52

Description

Symptoms

Installation of qwt52 fails because it can't find lbzip2 during the configuration phase (see attatched log). This is because lbzip2 is not installed on my system.

Log:

:info:configure Executing:  cd "/Users/xxx/Progs/MacPorts/var/macports/build/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/work/qwt-5.2.3" && ./configure --prefix=/Users/xxx/Progs/MacPorts INSTALLBASE="/Users/xxx/Progs/MacPorts" 
:debug:configure system:  cd "/Users/xxx/Progs/MacPorts/var/macports/build/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/work/qwt-5.2.3" && ./configure --prefix=/Users/xxx/Progs/MacPorts INSTALLBASE="/Users/xxx/Progs/MacPorts" 
:info:configure sh: ./configure: No such file or directory
:info:configure Command failed:  cd "/Users/xxx/Progs/MacPorts/var/macports/build/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/work/qwt-5.2.3" && ./configure --prefix=/Users/xxx/Progs/MacPorts INSTALLBASE="/Users/xxx/Progs/MacPorts" 
:info:configure Exit code: 127
:error:configure Failed to configure qwt52: configure failure: command execution failed
:debug:configure Error code: NONE
:debug:configure Backtrace: configure failure: command execution failed
:debug:configure     while executing
:debug:configure "$procedure $targetname"
:debug:configure Failed to locate 'lbzip2' in path: '/Users/xxx/Progs/MacPorts/bin:/Users/xxx/Progs/MacPorts/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?
:debug:configure     while executing
:debug:configure "error "$eMessage or at its MacPorts configuration time location, did you move it?""
:debug:configure     invoked from within
:debug:configure "try -pass_signal {
:debug:configure             set cmd_path [macports::binaryInPath $prog]
:debug:configure             return $cmd_path
:debug:configure         } catch {{*} eCode eMessage} {
:debug:configure        ..."
:debug:configure     (procedure "macports::findBinary" line 5)
:error:configure See /Users/xxx/Progs/MacPorts/var/macports/logs/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/main.log for details.

After installing lbzip manually it fails with the next issue:

:info:configure Executing:  cd "/Users/xxx/Progs/MacPorts/var/macports/build/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/work/qwt-5.2.3" && ./configure --prefix=/Users/xxx/Progs/MacPorts INSTALLBASE="/Users/xxx/Progs/MacPorts" 
:debug:configure system:  cd "/Users/xxx/Progs/MacPorts/var/macports/build/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/work/qwt-5.2.3" && ./configure --prefix=/Users/xxx/Progs/MacPorts INSTALLBASE="/Users/xxx/Progs/MacPorts" 
:info:configure sh: ./configure: No such file or directory
:info:configure Command failed:  cd "/Users/xxx/Progs/MacPorts/var/macports/build/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/work/qwt-5.2.3" && ./configure --prefix=/Users/xxx/Progs/MacPorts INSTALLBASE="/Users/xxx/Progs/MacPorts" 
:info:configure Exit code: 127
:error:configure Failed to configure qwt52: configure failure: command execution failed
:debug:configure Error code: NONE
:debug:configure Backtrace: configure failure: command execution failed
:debug:configure     while executing
:debug:configure "$procedure $targetname"
:debug:configure invalid command name "::ui_init"
:debug:configure     while executing
:debug:configure "::ui_init $priority $prefix $channels($priority) {*}$args"
:debug:configure     ("uplevel" body line 2)
:debug:configure     invoked from within
:debug:configure "uplevel 1 $body"
:error:configure See /Users/xxx/Progs/MacPorts/var/macports/logs/_Users_xxx_Progs_MacPorts_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_qwt/qwt52/main.log for details.

Digging a bit deeper configuration fails, as port tries to call ./configure instead of running qmake.

Proposed solution

I adapted the portfile in line 173 below to use qmake and everything seems to work after that:

if {${qwt_major} < 6} {

    # QWT version 5 can work with Qt3 or Qt4

    variant qt3 conflicts qt4 description {Use qt3-mac} {}

    variant qt4 conflicts qt3 description {Use qt4-mac} {}

    # move setting of 'qt_qmake_cmd' outside variants, since 'if'
    # statements are processed in-order while variants are processed after
    # everything else.

    set qt_qmake_cmd ""

    if {[variant_isset qt3]} {

        depends_lib-append  port:qt3-mac
        set qt_qmake_cmd    ${prefix}/libexec/qt3-mac/bin/qmake

    } else {

        # when variant 'qt3' is not set, use qt4 whether by default or via
        # the user's variant choice

        if {![variant_isset qt4]} {
            default_variants    +qt4
        }
        PortGroup           qt4 1.0
        PortGroup qmake 1.0 <<---- Inserted after line 172

    }
} else {

    variant qt5 conflicts qt4 description "Build with Qt5" {}
    variant qt4 conflicts qt5 description "Build with Qt4" {}

    # QWT 6+ uses Qt4+ only
    if {![variant_isset qt5]} {
        PortGroup qt4 1.0
        PortGroup qmake 1.0
    } else {
        #PortGroup           qt5 1.0
        PortGroup           qmake5 1.0
        set qt_arch_types   "x86_64"
        post-patch {
            reinplace "s|QT_STATIC_CONST|static const|" \
                ${worksrcpath}/src/qwt_scale_map.cpp \
                ${worksrcpath}/src/qwt_scale_map.h
            reinplace "s/QT_INSTALL_FRAMEWORKS/QT_INSTALL_LIBS/" \
                ${worksrcpath}/qwtconfig.pri
        }
        configure.args-append \
                -config absolute_library_soname
    }
}

As I'm not very familiar with port, I'm not sure if this is the right place/way to do it.

Regards

Attachments (2)

main.log.bz2 (2.1 KB) - added by Ortner 7 years ago.
Logfile of first try
main_2_qwt52.log.bz2 (1.9 KB) - added by Ortner 7 years ago.
log file after installing lbzip2

Download all attachments as: .zip

Change History (9)

comment:1 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: Ortner removed
Owner: set to michaelld
Status: newassigned
Summary: qwt52 defect in portfileqwt52 @5.2.3: sh: ./configure: No such file or directory

lbzip2 has nothing to do with the problem.

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

Can you please do the following, from a clean version of the qwt52 Portfile:

sudo port clean qwt52
sudo port build qwt52

then, assuming it fails:

cp $(port logfile qwt52) ~/Desktop/qwt52.log.txt
bzip2 ~/Desktop/qwt52.log.txt

then attach the resulting compressed logfile to this ticket.

I find it unlikely that using the qmake portgroup would help in building, but it's always possible. Reading through the log should help me understand this issue better.

Changed 7 years ago by Ortner

Attachment: main.log.bz2 added

Logfile of first try

Changed 7 years ago by Ortner

Attachment: main_2_qwt52.log.bz2 added

log file after installing lbzip2

comment:3 Changed 7 years ago by Ortner

Hi,

still got the original log-files from above. In the attatchment you will find main.log which is the log file of the first run and main_2_qwt52.log which is the log file after installing lbzip manually.

I'm running MacPorts in a prefixed environment/user mode (may be this contibutes to the problem...).

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

OK; got it & I can replicate the issue too. I think your fix is the right way to go; I'll verify locally.

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

In 2e43565a3528e8e97ac570d8dccd208ee5c7d4f6/macports-ports:

qwt, qwt52: when +qt4, use qmake PG.

Addresses ticket #54015 .

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

OK Should be fixed now. Please update & verify on your end.

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

Resolution: fixed
Status: assignedclosed

Closing as fixed.

Note: See TracTickets for help on using tickets.