bash:. / configure:/usr/bin/perl ^ M:坏翻译:没有这样的文件或目录(复制)

时间:2022-05-22 20:42:35

This question already has an answer here:

这个问题已经有了答案:

I am trying to build qt-everywhere-opensource-src-5.0.2 on Ubuntu 12.04, when i try to execute configure script with

当我尝试执行configure脚本时,我尝试在Ubuntu 12.04上构建qt- all -opensource-src-5.0.2。

./configure 

command I get

命令我

-bash: ./configure: /usr/bin/perl^M: bad interpreter: No such file or directory

I got Perl version 5.14 installed on my system.

我的系统上安装了Perl 5.14版本。

Configure script also shared below...

配置脚本也在下面共享…

#!/usr/bin/perl

#############################################################################

##

## Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).

## Contact: http://www.qt-project.org/legal

##

## This file is part of the build tools of the Qt Toolkit.

##

## $QT_BEGIN_LICENSE:LGPL$

## Commercial License Usage

## Licensees holding valid commercial Qt licenses may use this file in

## accordance with the commercial license agreement provided with the

## Software or, alternatively, in accordance with the terms contained in

## a written agreement between you and Digia.  For licensing terms and

## conditions see http://qt.digia.com/licensing.  For further information

## use the contact form at http://qt.digia.com/contact-us.

##

## GNU Lesser General Public License Usage

## Alternatively, this file may be used under the terms of the GNU Lesser

## General Public License version 2.1 as published by the Free Software

## Foundation and appearing in the file LICENSE.LGPL included in the

## packaging of this file.  Please review the following information to

## ensure the GNU Lesser General Public License version 2.1 requirements

## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.

##

## In addition, as a special exception, Digia gives you certain additional

## rights.  These rights are described in the Digia Qt LGPL Exception

## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.

##

## GNU General Public License Usage

## Alternatively, this file may be used under the terms of the GNU

## General Public License version 3.0 as published by the Free Software

## Foundation and appearing in the file LICENSE.GPL included in the

## packaging of this file.  Please review the following information to

## ensure the GNU General Public License version 3.0 requirements will be

## met: http://www.gnu.org/copyleft/gpl.html.

##

##

## $QT_END_LICENSE$

##

#############################################################################



####################################################################################################

#

# Mother script for Qt Modularization

#

####################################################################################################



use strict;

use warnings;



use File::Basename;

use File::Path;

use Cwd;

use Cwd 'abs_path';

use Config;



# Makes sure the arguments are directories, and creates them if not.

# Will die if there is an error.

sub ensureDir {

    foreach (@_) {

        if (-e $_) {

            if (-d $_) {

                next;

            } else {

                die ("$_ exists, but is not a directory");

            }

        }

        File::Path::mkpath($_) or die("Could not create $_");

    }

}



# `system', but also print the command

sub system_v

{

    print "+ @_\n";

    return system(@_);

}



my $relpath = dirname(abs_path($0));

$relpath =~ s,\\,/,g;

# the current directory is the "build tree" or "object tree"

my $outpath = getcwd();



if (! -e "$relpath/qtbase/configure") {

    die("$relpath/qtbase/configure not found. Did you forget to run \"init-repository\"?");

}



ensureDir("$outpath/qtbase");

chdir("$outpath/qtbase");

my $ret = system_v("$relpath/qtbase/configure", @ARGV);

if ($ret != 0) {

    print "*** qtbase/configure exited with non-zero status.\n";

    exit ($ret>>8) ;

}



chdir("$outpath");



$ret = system_v("$outpath/qtbase/bin/qmake", "$relpath/qtsdk.pro");

exit ($ret>>8);

1 个解决方案

#1


12  

Change your line endings to linux one.

将您的行结束更改为linux操作。

dos2unix yourscript.pl

Or you could call your program with perl

或者可以用perl调用程序。

perl yourscript.pl

#1


12  

Change your line endings to linux one.

将您的行结束更改为linux操作。

dos2unix yourscript.pl

Or you could call your program with perl

或者可以用perl调用程序。

perl yourscript.pl