如何在Geany中编译/构建/执行C ++项目?

时间:2010-12-17 22:37:16

标签: c++ linux geany

我真的不认为这会很困难。 Geany显然有能力创建项目,向项目添加文件,编译单个文件,但是即使在谷歌搜索之后,我也找不到如何构建和执行项目的清晰描述......这很烦人因为我真的很烦就像Geany的简洁和干净,整洁的工作空间一样,但这可能是一个交易破坏者。

6 个答案:

答案 0 :(得分:5)

Geany不编译项目。您可以使用makefile来实现相同的目的;但是,您必须手动创建或使用可以找出依赖关系的外部命令。 Geany的“make”命令默认使用名为“makefile”的make文件,因此你可以简单地给你的make文件命名,一切都应该好。

all: hello

hello: main.o factorial.o hello.o
    g++ main.o factorial.o hello.o -o hello

main.o: main.cpp
    g++ -c main.cpp

factorial.o: factorial.cpp
    g++ -c factorial.cpp

hello.o: hello.cpp
    g++ -c hello.cpp

clean:
    rm -rf *o hello

取自here的示例。您也可以在该页面上找到更多详细信息。

答案 1 :(得分:4)

要构建项目,只需打开项目文件,然后在Build菜单中选择Make(shift + F9)。

执行菜单Build and Execute(F5)。

如果项目没有使用make进行编译(就像在Linux上一样),您还必须在菜单Project entry Properties中编辑项目的属性。

如果你想要详细信息,你也可以阅读手册,与google搜索相比,这看起来很愚蠢,但对我来说看起来很清楚......只需点击F1键即可。

答案 2 :(得分:2)

根据this,按F8编译,按F5运行项目。首先,您需要设置编译器,如文章中所述。

答案 3 :(得分:1)

Geany使用外部命令构建项目。这是灵活的,允许IDE与语言无关,因此能够构建大型和异构项目。

关于C ++,创建一个基本的Makefile非常简单(比上面的例子简单得多)。设置你的项目构建一个名为“my_program”的程序,由my_program.cpp和bar.cpp文件组成,并与foo库链接。所有你需要的是:

  

LDLIBS + = -lfoo

     

my_program:my_program.cpp bar.cpp

使用名称“Makefile”将其保存在sources的同一目录中。现在必须正确创建Geany项目,指示基本目录是存储代码(和Makefile)的位置。

就是这样!你现在可以用按键编译程序(shift + F9)。要使用键运行它,只需在Geany的项目属性中输入您的程序名称(示例中为my_program)。

请注意,您的一个源文件与目标二进制文件具有相同的名称非常重要,否则您无法使用Make的隐式规则,这会使Makefile复杂化。

答案 4 :(得分:1)

使用Geany的F键编译多文件C ++项目需要首先在Geany中设置Makefile和相应的设置(如前面的答案中所述);完成此类设置后,Geany的 Build 下拉菜单中的F键对该特定的多文件项目非常有用。

如果您只想快速编译多文件C ++项目而无需设置Makefile以及Geany的设置,请使用Geany底部的终端键入用于编译多文件的命令行指令项目:

uberstudent@uberstudent:~$ g++ my_source1.cpp my_source2.cpp -o my_executable

然后,您可以使用以下命令执行可执行文件:

uberstudent@uberstudent:~$ ./my_executable

(请注意,以上内容适用于Linux上的Geany;我没有在其他操作系统上测试过上述命令。)

答案 5 :(得分:-1)

假设您设置路径(右键单击my computer > properties > advanced system settings > environment variables,只需谷歌搜索下一步操作)和Mingw,点击“设置构建菜单命令”并输入以下内容。包括“”。

compile = g++ -O0 -g3 -Wall -c -o"%e.o" "%f" 

Build = g++ -o"%e" ./%e.o

Execute = "./%e"

这对我有用,如果你在尝试构建时(编译后)出现错误,说明某些权限问题,那就是windows UAC的b / c阻止了Geany的构建。您只需要以管理员身份运行geany即可解决此问题。