标签: c++

如何编译c&c++程序?

我在某处读到我需要安装“构建基本打包程序”,所以我尝试了:

sudo apt-get install build-essential 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)

但是该文件仍然无法编译或运行...

gcc -Wall -W -Werror factorial.cpp -o factorial.
Run Code Online (Sandbox Code Playgroud)

给我:

gcc -Wall -W -Werror factorial.cpp -o factorial.
factorial.cpp:3:22: fatal error: iostream.h: No such file or directory
compilation terminated
Run Code Online (Sandbox Code Playgroud)

这是我的一段代码://WAP 演示用于计算阶乘的静态成员

    #include<iostream.h>    
    #include<conio.h>
class fact
{
int i;
    static int count;
    public : 
    void calculate()
    {
        long int …
Run Code Online (Sandbox Code Playgroud)

c c++

3
推荐指数
1
解决办法
7475
查看次数

在哪里可以找到 Magick++ API?

我使用的是 Ubuntu 14.04,它默认安装了 ImageMagick 6.7.7-10。我需要在 C++ 项目中使用Magick++,ImageMagick 的 C++ API,但我不知道它的位置。我如何知道我是否拥有它,如果没有,获得它的最佳方法是什么?

编辑 - 现在我已经安装了 libmagick++-dev,我在哪里可以找到 Magick++.h,我需要在我的项目中#include 的头文件?

c++ imagemagick

3
推荐指数
1
解决办法
1万
查看次数

在 Ubuntu 14.04 上使用 arc4random trusty

我目前正在使用 C++ 程序,我希望在其中使用 arc4random 函数。每次编译时,我都会收到 arc4random 的“未在范围内声明”消息。我知道这是我的程序中包含的库中的一个错误,但我已经包含了 stdlib.h 和 stdio.h ,我相信它们是它使用的库?我已经安装了“sudo apt-get install libpcl-all”以及“sudo apt-get install build-essential”。我已经在网上搜索过,但目前仍不确定我需要什么。我对 Ubuntu 还很陌生,所以任何有关这个问题的帮助将不胜感激。

compiling c++ libraries

3
推荐指数
1
解决办法
3976
查看次数

X11/extensions/Xcomposite.h:没有那个文件或目录

我尝试在 Ubuntu 下编译https://unix.stackexchange.com/a/228674

不幸的是,最终出现以下错误:

/tmp/find-cursor$ make
cc find-cursor.c -o find-cursor -lX11
find-cursor.c:19:39: fatal error: X11/extensions/Xcomposite.h: No such file or directory
 #include <X11/extensions/Xcomposite.h>
                                       ^
compilation terminated.
make: *** [all] Error 1
Run Code Online (Sandbox Code Playgroud)

我试过以下嫌疑人:

$ sudo apt-get install libxtst-dev libxss-dev libxtst6-dbg libxext6-dbg libxss1-dbg
Run Code Online (Sandbox Code Playgroud)

但在编译时仍然没有运气。为了您的方便,这里是片段:

sudo apt-get install mercurial
cd /tmp
hg clone https://bitbucket.org/Carpetsmoker/find-cursor
cd find-cursor
make
Run Code Online (Sandbox Code Playgroud)

解决了:

FTR:要编译上面的代码,我必须: sudo apt-get install libxcomposite-dev libxdamage-dev libxrender-dev-std=gnu99在 Makefile 中向 cc添加标志

xorg programming compiling c++

3
推荐指数
1
解决办法
9876
查看次数

找不到 Qt5Designer、qt5svg 和 qt5x11extras

我正在尝试安装 KLatexFormula 并且它的 cmake 脚本给出了它无法找到包配置文件 Qt5DesignerConfig.cmake 和 qt5designer-config.cmake 的错误。

Cmake 要求我将 Qt5Designer 的前缀添加到 CMAKE_PREFIX_PATH。我快速找到了 Qt5Designer 的路径

apt-files search Qt5Designer
Run Code Online (Sandbox Code Playgroud)

我正在寻找的文件出现在路径下

/usr/lib/x86_64-linux-gnu/cmake/Qt5Designer/Qt5DesignerConfig.cmake
Run Code Online (Sandbox Code Playgroud)

在 qttools5-dev 包下。我相信这是正确的位置,所以我添加了前缀路径

export QT_CMAKE_PREFIX_PATH="/usr/lib/x86_64-linux-gnu/cmake"
Run Code Online (Sandbox Code Playgroud)

如果我检查命令,路径就会显示

export
Run Code Online (Sandbox Code Playgroud)

但是,再次构建 cmake 文件给了我相同的缺失包。在试图弄清楚出了什么问题的过程中,我去了

cd /usr/lib/x86_64-linux-gnu/cmake
Run Code Online (Sandbox Code Playgroud)

此时我看到该文件夹​​中没有 Qt5Designer 条目。我的 qttools5-dev 完全是最新的。有谁知道我该如何修复它?

我已经尝试过这个并获得与该答案相同的搜索结果。

qt c++ qt-creator qt5

3
推荐指数
1
解决办法
4621
查看次数

如何在 Ubuntu 18(仿生)上使用 C++17/文件系统头文件获取 libstdc++?

在 Docker 的 ubuntu 仿生上,我得到了这个:

No such file or directory
 #include <filesystem>
Run Code Online (Sandbox Code Playgroud)

在执行此操作的 C++ 文件上:

#if __cplusplus >= 201703L
#include <filesystem>
#endif
Run Code Online (Sandbox Code Playgroud)

尝试使用 clang 6.0 进行编译时。不幸的是,我无法移动,experimental/filesystem因为它不是我的图书馆,它来自 OpenVPN3。我尝试了 clang 10,但仍然出现错误。

Ubuntu 20.04(专注于 docker)工作!但是我想使用更旧的版本来与旧系统兼容。

这是编译给出错误的文件时 cmake/make 产生的输出:

cd /workspaces/libopenvpnclient/build/src && /usr/local/clang/bin/clang++  -DASIO_STANDALONE

 -DHAVE_LZ4 -DLZ4_DISABLE_DEPRECATE_WARNINGS -DMBEDTLS_DEPRECATED_REMOVED -DUSE_ASIO 

-DUSE_OPENSSL -I/workspaces/libopenvpnclient/src/../openvpn3 -I/workspaces/libopenvpnclient

/src/../libtins/include -I/workspaces/libopenvpnclient/src/../asio/asio/include -I/workspaces

/libopenvpnclient/src/../literal_ipaddr -I/workspaces/libopenvpnclient/openvpn3/cmake/..

 -I/workspaces/libopenvpnclient/openvpn3/cmake/../../deps/asio/asio/include  -Wall -Wsign-

compare -Wno-missing-field-initializers -std=c++1z -o CMakeFiles/libopenvpn_example.dir

/OpenVPNClient.cpp.o -c /workspaces/libopenvpnclient/src/OpenVPNClient.cpp
Run Code Online (Sandbox Code Playgroud)

我猜 Ubuntu 18 上的 libstdc++ 有问题?

Dockerfile:

FROM ubuntu:bionic

RUN export DEBIAN_FRONTEND=noninteractive && apt-get update …
Run Code Online (Sandbox Code Playgroud)

compiling c++ make docker 18.04

3
推荐指数
1
解决办法
9103
查看次数

libxml2 package installed but cannot include, building libaiml

I am trying to build a library (libaiml). I was having problems installing the library using normal methods:

./configure ; make ; make install
Run Code Online (Sandbox Code Playgroud)

In the README, the author says you should use this method to install the libarary, but the standard download does not come with a configure file.

To get around this, I decided to import the source into eclipse and try building the library myself. Now I am having a problem resolving the libxml2 dependency. …

apt dpkg c++ g++ eclipse-cdt

2
推荐指数
1
解决办法
3923
查看次数

apport 禁用后无法生成核心转储

嗨,我目前正在 Ubuntu 上编程 c++,但无法生成带有分段错误的核心转储。我只是得到“分段错误”而不是我设置的(核心转储) ulimit -c 无限制。

我曾经能够生成核心转储,但前一段时间他们停止了。也许这是因为我因为这个错误而禁用了 apport “对不起,Ubuntu 12.04 遇到了内部错误。” .

所以我想知道在 ulimit -c unlimited 之后还有哪些其他步骤可以启用核心转储?

c++ apport segmentation-fault gdb

2
推荐指数
1
解决办法
2396
查看次数

C++ system() 函数用于 ubuntu 中的进一步参数

我什至不知道如何寻找这个解决方案。我的问题是,如何使用函数 system(); 在 C++ 中执行系统命令;但是为了更多的争论(来吧,这听起来很糟糕)。让我解释一下:例如,尝试在 termianl 中键入这样的内容:

lynx www.somewebsiteidunnowhatever.com -get_data
Run Code Online (Sandbox Code Playgroud)

我们开始了,空行要求我们输入。您可以键入以下内容:

name=travis&age=45&hobby=football
---
Run Code Online (Sandbox Code Playgroud)

之后我们会看到一些结果。现在我无法管理如何使用 system(); 实现这种行为;当出现空行时,我的 C++ 脚本停止响应。请帮忙...

c++ lynx

2
推荐指数
1
解决办法
863
查看次数

/usr/bin/ld: 找不到 -lX11

https://github.com/laazyboy13/linux-csgo-external/issues/6 如何让它找到 libx11-dev?

william@william-elementarylinux:~/csgohack$ make
Linking CXX executable build/csgo_external
/usr/bin/ld: cannot find -lX11
collect2: error: ld returned 1 exit status
make[2]: *** [build/csgo_external] Error 1
make[1]: *** [CMakeFiles/csgo_external.dir/all] Error 2
make: *** [all] Error 2
william@william-elementarylinux:~/csgohack$ ld -lX11 --verbose
GNU ld (GNU Binutils for Ubuntu) 2.24
  Supported emulations:
   elf_x86_64
   elf32_x86_64
   elf_i386
   i386linux
   elf_l1om
   elf_k1om
   i386pep
   i386pe
using internal linker script:
==================================================
/* Script for -z combreloc: combine and sort reloc sections */
OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64",
          "elf64-x86-64")
OUTPUT_ARCH(i386:x86-64)
ENTRY(_start)
SEARCH_DIR("/usr/x86_64-linux-gnu/lib64"); SEARCH_DIR("=/usr/local/lib/x86_64-linux-gnu"); SEARCH_DIR("=/usr/local/lib64"); …
Run Code Online (Sandbox Code Playgroud)

c++ libraries make

2
推荐指数
1
解决办法
2685
查看次数