我想在Lubuntu Kinetic Kudu (22.10)
上使用NetBeans 15
开始C++
开发。
我先安装了build-essential
sudo apt install build-essential
g++ --version
g++ (Ubuntu 12.2.0-1ubuntu1) 12.2.0
gcc --version
gcc (Ubuntu 12.2.0-1ubuntu1) 12.2.0
当选择Tools > Options > C/C++
时,它表示需要ccls
或clangd
协议服务器。
我安装了ccls
sudo apt install ccls
ccls --version
Ubuntu ccls version 0.20220729-1
clang version 14.0.6-2
不确定我是否应该安装clangd
代替或除了ccls
。
现在,当我启动NetBeans 15
并选择C/C++
选项时,它会自动选择ccls
的路径
/usr/bin/ccls
现在我想开始一个第一个Hello World C++
项目,但不知何故,它看起来很复杂。
我想使用最高的C++
标准版本。安装的build-essential
附带12.2
版本,这里以https://gcc.gnu.org/onlinedocs/12.2.0/为例,我假设C++
支持标准20
或更高版本。我第一次就研究过了。
1. Choose Project: File > New Project > C/C++ > Lightweight C/C++ Project
2. Location: Project Path
I created a new folder myfirstcpp in /home/me/NetBeansProjects and selected it on this step.
3. Editor: Compile Commands
Here no clue what to specify.
I leave it empty and proceed.
4. Build: "Configuration Name", "Build", "Clean" and "Run"
Here no clue what to specify.
I leave it empty and proceed.
项目已创建,但完全是空的,前期没有创建工件。
我创建了一个CPP
文件,并从Web上复制了以下代码
// C++ program to display "Hello World"
// Header file for input output functions
# include <iostream>
using namespace std;
// Main() function: where the execution of program begins
int main()
{
// prints hello world
cout << "Hello World";
return 0;
}
但是编辑器显示了一个黄色的警告三角形,说明compile commands not configured
。也没有选项来运行那个简单的Hello World程序,每个Run
选项都是灰色的。
显然我必须正确配置步骤3-4
。如何配置?
更新有关@skomisa
的注解
我以前找到过这篇文章,但是放置了一个内容完全相同的.ccls
文件
/home/me/NetBeansProjects/myfirstcpp/.ccls:
g++
-xc++
-Iinclude
-std=c++17
我没有改变任何东西。现在我又试了一次,在Editor
类别的Project Properties
中单击,删除并添加/home/me/NetBeansProjects/myfirstcpp/.ccls
到.ccls
文件的路径,切换到Build
类别,没有改变任何东西,突然Run
选项被激活了。
在我看来,这是一个错误......当我关闭NetBeans
,重新启动时,一切都再次变灰,直到我再次在Project Properties
中单击,直到Run
选项出现活动状态。
但是,当我单击Run Project (myfirstcpp)
选项时,在Output
窗口中出现了此异常
Exception in thread "main" java.io.IOException: Cannot run program "": error=2, No such file or directory
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
at org.netbeans.modules.cpplite.project.runner.Runner.main(Runner.java:35)
Caused by: java.io.IOException: error=2, No such file or directory
at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:315)
at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:245)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
... 2 more
.ccls
文件中的内容不正确或不完整,或者还必须配置Build
类别。
我使用OpenJDK
java --version
openjdk 18.0.2.1 2022-08-18
OpenJDK Runtime Environment (build 18.0.2.1+1-1)
OpenJDK 64-Bit Server VM (build 18.0.2.1+1-1, mixed mode, sharing)
如果这是相关的话。
1条答案
按热度按时间mbjcgjjk1#
刚刚在Ubuntu 22.04上安装了NB 15并运行了C++(使用gcc/g++12)项目。
https://stackoverflow.com/a/66832862/6760184
sudo apt install mlocate
安装,并使用ls -l
locate unpack200``查找unpack 200。-std=c++20
希望这对你有帮助!