如何运行(和编译)带有gcc参数的C文件?

时间:2013-09-26 15:10:07

标签: c gcc command-line

我认为这是一个非常简单的问题,但我对命令行的经验较少。我有一个我想要运行的旧C程序。它显示以下文字:

/*      This is a stand-alone program intended to generate ...  It is called*/
/*      as follows:                                                         */
/*                                                                          */
/*          tw_r2fft N > outputfile.c                                       */ 
/*      This program will generate the ... array 'w'                        */
/*      and output the result to the display.  Redirect the                 */
/*      output to a file as shown above.                                    */

我尝试过(在cmd中):

gcc tw_r2fft.c 1024 > outputfile.c

gcc的错误消息是:

gcc: 1024: No such file or directory

我尝试了一些变化但没有成功。

7 个答案:

答案 0 :(得分:7)

我相信文档意味着你应该首先编译和构建程序,然后用参数调用可执行文件。因此,在您的情况下,您需要执行以下操作:

gcc tw_r2fft.c -o tw_r2fft 
./tw_r2fft 1024 > outputfile.c

答案 1 :(得分:2)

尝试将C程序编译为可执行的二进制文件:

gcc -o tw_r2fft tw_r2fft.c

然后使用正确的命令行参数启动二进制文件:

./tw_r2fft 1024 >outputfile.c

然后你也可以编译和运行你的输出文件::)

gcc -o test outputfile.c
./test

答案 2 :(得分:1)

您需要在运行程序之前编译该程序

gcc tw_r2fft.c -o tw_r2fft
./tw_r2fft 1024 > outputfile.c

答案 3 :(得分:1)

该评论是对如何使用已编译程序的解释。你需要先建立它。

最简单的:

make tw_r2fft
./tw_r2fft 1024 > outputfile.c

下一个最简单:

gcc -o tw_r2fft tw_r2fft.c
./tw_r2fft 1024 > outputfile.c

答案 4 :(得分:1)

这一行将编译你的程序

gcc tw_r2fft.c -o tw_r2fft 

gcc是编译器,tw_r2fft.c是你的文件名。 -o是一种更改输出文件名的方法。您可以在没有-o的情况下编译程序,但默认情况下编译器会将输出文件保存为./a.out

该行执行输出文件并传递命令行参数,即1024,整个程序的输出保存到outputfile.c

./tw_r2fft 1024 > outputfile.c

仍然需要帮助

http://www.cyberciti.biz/faq/compiling-c-program-and-creating-executable-file/

答案 5 :(得分:0)

您可以尝试以下方法:

const Menu = () => {
    const { someParamInYourRoute } = useParams();
    return (
        <div className={`button-group ${someParamInYourRoute ? '' : 'no-gaps'}`}>
            <NavLink to="/work-items"><a className="button">Work Items</a></NavLink>
            <NavLink to="/settings"><a className="button">Settings</a></NavLink>
        </div>
    );
}

或没有-o选项:

useLocation

答案 6 :(得分:0)

单行编译并运行程序:

gcc source.c -o sourceBinary; ./sourceBinary

分号表示bash中的结束语句/中断。