簡體   English   中英

使用 magick++ 的應用程序返回 Magick++/Functions.h:14:10:致命錯誤:找不到“字符串”文件

[英]app with magick++ returns Magick++/Functions.h:14:10: fatal error: 'string' file not found

我正在嘗試使用 ImageMagick 在 MacOS(Big Sur)中構建一個簡單的 C++ 應用程序

這是我的 CMakeLists.txt:

cmake_minimum_required(VERSION 3.7)
project(HelloWorld)
add_definitions(-std=c++17)

set(CXX_FLAGS "-Wall")
set(CMAKE_CXX_FLAGS, "${CXX_FLAGS}")

add_executable(HelloWorld src/main.cpp)

add_definitions( -DMAGICKCORE_QUANTUM_DEPTH=16 )
add_definitions( -DMAGICKCORE_HDRI_ENABLE=0 )
find_package(ImageMagick COMPONENTS Magick++)
include_directories(${ImageMagick_INCLUDE_DIRS})
target_link_libraries(HelloWorld ${ImageMagick_LIBRARIES})

在我的 main.cpp 上,我只有#include <Magick++.h>在文件頂部

當我運行構建時,我得到

/usr/local/Cellar/imagemagick/7.0.10-48/include/ImageMagick-7/Magick++/Functions.h:14:10: fatal error: 'string' file not found

任何想法這里有什么問題? 我重新安裝了 imagemagick 但我仍然得到同樣的錯誤。

CMake版本是3.19

編輯:

似乎問題出在我的 macOS 設置上,我嘗試編譯一個簡單的 hello world,但#include <iostream>出現同樣的錯誤

關於如何在 mac 上修復/重置 c++/gcc 設置的任何想法?

我假設您使用自制軟件安裝GCC ,即“GNU 編譯器集合” ,其中包括g++和 C++ 編譯器。 因此,為了獲取版本號,您可以運行:

ls /usr/local/bin/g++*

樣品 Output

/usr/local/bin/g++-10

現在您需要告訴cmake使用該編譯器,因此您將使用:

CXX=/usr/local/bin/g++-10 cmake ..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM