В сборке, которая работала совсем недавно, я вижу множество сообщений вроде:
[build] ld: warning: ignoring file
'/opt/homebrew/Cellar/sdl2_image/2.8.2_1/lib/libSDL2_image-2.0.0.dylib':
found architecture 'arm64', required architecture ‘x86_64'
Но я работаю на машине Apple Silicon Arm64! В моем файле CMakeLists.txt не указана архитектура. В последнее время ничего не обновлялось. Как это изменится и как это исправить?
Я использую MacOS 14.2.1.
Я пробовал добавить это, ничего не изменилось ошибки:
set(CMAKE_REQUIRED_LINK_OPTIONS "-arch;arm64")
Вот CMakeLists.txt:
cmake_minimum_required(VERSION 3.28)
project(my-project)
set (HALL_OF_MIRRORS hom/HallOfMirrors.cpp
hom/MirrorCore.cpp
hom/MirrorThings.cpp
hom/Thief.cpp
hom/Laser.cpp
hom/Ray.cpp
hom/LogMe.cpp)
set (MADFUNCTION Library/SpaceCalc.cpp Madfn/Madfunction.cpp Madfn/MadfnGraph.cpp)
set (JPEG true)
#set (TEST DrawboxMain.cpp Test/ControllerTry.cpp )
set (TEST DrawboxMain.cpp Test/CheckerCheckerBoardBoard.cpp Library/SDL/Keyboard.SDL.cpp)
#set (TEST Test/rtrusselsInvertingGfx.c)
#set (TEST Mini-Draw.cpp Test/MouseDraw.cpp)
#set (TEST MiniClick.cpp)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
#find_package(SDL2_gfx REQUIRED)
#link_directories(${SDL2_GFX_LIBRARY_DIRS})
find_package(SDL2 REQUIRED)
link_directories(${SDL2_LIBRARY_DIRS} /opt/homebrew/lib/)
find_package(SDL2_ttf REQUIRED)
# include_directories(${SDL2_INCLUDE_DIRS} . Library APClass Library/jpeg)
include_directories(/opt/homebrew/include . Library Tools Toolkit
hom APClass Library/jpeg)
message( STATUS SDL2_INCLUDE_DIRS=${SDL2_INCLUDE_DIRS} )
message( STATUS SDL2_LIBRARIES=${SDL2_LIBRARIES} )
include(Library/CMakeLists.txt)
include(Tools/CMakeLists.txt)
include(APClass/CMakeLists.txt)
#add_subdirectory(Toolkit/CMakeLists.txt)
message( STATUS DRAWBOX=${DRAWBOX})
add_library(Drawbox STATIC ${DRAWBOX} ${TOOLS} ${APCLASS})
add_executable(TestProgram ${TEST} ${DRAWBOX} ${TOOLS} ${APCLASS})
target_compile_features(Drawbox PUBLIC cxx_std_11)
target_compile_options(Drawbox PRIVATE
-Wno-switch -Wno-deprecated-declarations -Wno-writable-strings)
target_compile_features(TestProgram PUBLIC cxx_std_11)
target_compile_options(TestProgram PRIVATE
-Wno-switch -Wno-deprecated-declarations -Wno-writable-strings)
#add_executable(Test Test/ClickDraw.cpp)
target_link_libraries(TestProgram ${SDL2_LIBRARIES} SDL2_gfx SDL2_ttf
/opt/homebrew/lib/libSDL2_image.dylib
/opt/homebrew/lib/libSDL2_ttf.dylib
/opt/homebrew/lib/libSDL2_mixer.dylib
)
Отредактируйте, чтобы добавить дополнительную информацию по запросу:
% cmake -L
< some warnings skipped>
-- Found SDL2_TTF: /opt/homebrew/lib/libSDL2_ttf.dylib
-- SDL2_INCLUDE_DIRS=/opt/homebrew/include/SDL2
-- SDL2_LIBRARIES=/opt/homebrew/lib/libSDL2.dylib-framework Cocoa/opt/homebrew/lib/libSDL2main.a
-- DRAWBOX=/Users/ken/prog24/Drawbox/Library/SpaceCalc.cpp/Users/ken/prog24/Drawbox/Library/Color.cpp/Users/ken/prog24/Drawbox/Library/FinePoint.cpp/Users/ken/prog24/Drawbox/Library/DrawboxWindow.cpp/Users/ken/prog24/Drawbox/Library/DrErrMessages.cpp/Users/ken/prog24/Drawbox/Library/DrEventQ.cpp/Users/ken/prog24/Drawbox/Library/Image.cpp/Users/ken/prog24/Drawbox/Library/PVector.cpp/Users/ken/prog24/Drawbox/Library/Point.cpp/Users/ken/prog24/Drawbox/Library/Rect.cpp/Users/ken/prog24/Drawbox/Library/Timer.cpp/Users/ken/prog24/Drawbox/Library/SDL/Drawbox.SDL.cpp/Users/ken/prog24/Drawbox/Library/SDL/Keyboard.SDL.cpp
-- Configuring done (0.4s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/ken/prog24/Drawbox
-- Cache values
CMAKE_BUILD_TYPE:STRING=
CMAKE_INSTALL_PREFIX:PATH=/usr/local
CMAKE_OSX_ARCHITECTURES:STRING=
CMAKE_OSX_DEPLOYMENT_TARGET:STRING=
CMAKE_OSX_SYSROOT:PATH=/Library/Developer/CommandLineTools/SDKs/MacOSX14.2.sdk
SDL2MAIN_LIBRARY:FILEPATH=/opt/homebrew/lib/libSDL2main.a
SDL2_DIR:PATH=
SDL2_INCLUDE_DIR:PATH=/opt/homebrew/include/SDL2
SDL2_LIBRARY:STRING=/opt/homebrew/lib/libSDL2.dylib;-framework Cocoa
SDL2_TTF_INCLUDE_DIR:PATH=/opt/homebrew/include/SDL2
SDL2_TTF_LIBRARY:STRING=/opt/homebrew/lib/libSDL2_ttf.dylib
SDL2_ttf_DIR:PATH=/opt/homebrew/lib/cmake/SDL2_ttf
Вот выходные данные конфигурации, когда я повторно сохраняю CMakeLists.txt из VSCode:
[main] Configuring project: Drawbox
[proc] Executing command: /opt/homebrew/bin/cmake -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/clang -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/clang++ -Wno-dev --no-warn-unused-cli -S/Users/ken/prog24/Drawbox -B/Users/ken/prog24/Drawbox/build -G "Unix Makefiles"
[cmake] Not searching for unused variables given on the command line.
[cmake] -- SDL2_INCLUDE_DIRS=/opt/homebrew/include/SDL2
[cmake] -- SDL2_LIBRARIES=/opt/homebrew/lib/libSDL2.dylib-framework Cocoa/opt/homebrew/lib/libSDL2main.a
[cmake] -- DRAWBOX=/Users/ken/prog24/Drawbox/Library/SpaceCalc.cpp/Users/ken/prog24/Drawbox/Library/Color.cpp/Users/ken/prog24/Drawbox/Library/FinePoint.cpp/Users/ken/prog24/Drawbox/Library/DrawboxWindow.cpp/Users/ken/prog24/Drawbox/Library/DrErrMessages.cpp/Users/ken/prog24/Drawbox/Library/DrEventQ.cpp/Users/ken/prog24/Drawbox/Library/Image.cpp/Users/ken/prog24/Drawbox/Library/PVector.cpp/Users/ken/prog24/Drawbox/Library/Point.cpp/Users/ken/prog24/Drawbox/Library/Rect.cpp/Users/ken/prog24/Drawbox/Library/Timer.cpp/Users/ken/prog24/Drawbox/Library/SDL/Drawbox.SDL.cpp/Users/ken/prog24/Drawbox/Library/SDL/Keyboard.SDL.cpp
[cmake] -- Configuring done (0.0s)
[cmake] -- Generating done (0.0s)
[cmake] -- Build files have been written to: /Users/ken/prog24/Drawbox/build
Подробнее здесь: https://stackoverflow.com/questions/793 ... -libraries
CMake строится на Mac в поисках неправильных архитектурных библиотек ⇐ C++
Программы на C++. Форум разработчиков
1736947968
Anonymous
В сборке, которая работала совсем недавно, я вижу множество сообщений вроде:
[build] ld: warning: ignoring file
'/opt/homebrew/Cellar/sdl2_image/2.8.2_1/lib/libSDL2_image-2.0.0.dylib':
found architecture 'arm64', required architecture ‘x86_64'
Но я работаю на машине Apple Silicon Arm64! В моем файле CMakeLists.txt не указана архитектура. В последнее время ничего не обновлялось. Как это изменится и как это исправить?
Я использую MacOS 14.2.1.
Я пробовал добавить это, ничего не изменилось ошибки:
set(CMAKE_REQUIRED_LINK_OPTIONS "-arch;arm64")
Вот CMakeLists.txt:
cmake_minimum_required(VERSION 3.28)
project(my-project)
set (HALL_OF_MIRRORS hom/HallOfMirrors.cpp
hom/MirrorCore.cpp
hom/MirrorThings.cpp
hom/Thief.cpp
hom/Laser.cpp
hom/Ray.cpp
hom/LogMe.cpp)
set (MADFUNCTION Library/SpaceCalc.cpp Madfn/Madfunction.cpp Madfn/MadfnGraph.cpp)
set (JPEG true)
#set (TEST DrawboxMain.cpp Test/ControllerTry.cpp )
set (TEST DrawboxMain.cpp Test/CheckerCheckerBoardBoard.cpp Library/SDL/Keyboard.SDL.cpp)
#set (TEST Test/rtrusselsInvertingGfx.c)
#set (TEST Mini-Draw.cpp Test/MouseDraw.cpp)
#set (TEST MiniClick.cpp)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
#find_package(SDL2_gfx REQUIRED)
#link_directories(${SDL2_GFX_LIBRARY_DIRS})
find_package(SDL2 REQUIRED)
link_directories(${SDL2_LIBRARY_DIRS} /opt/homebrew/lib/)
find_package(SDL2_ttf REQUIRED)
# include_directories(${SDL2_INCLUDE_DIRS} . Library APClass Library/jpeg)
include_directories(/opt/homebrew/include . Library Tools Toolkit
hom APClass Library/jpeg)
message( STATUS SDL2_INCLUDE_DIRS=${SDL2_INCLUDE_DIRS} )
message( STATUS SDL2_LIBRARIES=${SDL2_LIBRARIES} )
include(Library/CMakeLists.txt)
include(Tools/CMakeLists.txt)
include(APClass/CMakeLists.txt)
#add_subdirectory(Toolkit/CMakeLists.txt)
message( STATUS DRAWBOX=${DRAWBOX})
add_library(Drawbox STATIC ${DRAWBOX} ${TOOLS} ${APCLASS})
add_executable(TestProgram ${TEST} ${DRAWBOX} ${TOOLS} ${APCLASS})
target_compile_features(Drawbox PUBLIC cxx_std_11)
target_compile_options(Drawbox PRIVATE
-Wno-switch -Wno-deprecated-declarations -Wno-writable-strings)
target_compile_features(TestProgram PUBLIC cxx_std_11)
target_compile_options(TestProgram PRIVATE
-Wno-switch -Wno-deprecated-declarations -Wno-writable-strings)
#add_executable(Test Test/ClickDraw.cpp)
target_link_libraries(TestProgram ${SDL2_LIBRARIES} SDL2_gfx SDL2_ttf
/opt/homebrew/lib/libSDL2_image.dylib
/opt/homebrew/lib/libSDL2_ttf.dylib
/opt/homebrew/lib/libSDL2_mixer.dylib
)
Отредактируйте, чтобы добавить дополнительную информацию по запросу:
% cmake -L
< some warnings skipped>
-- Found SDL2_TTF: /opt/homebrew/lib/libSDL2_ttf.dylib
-- SDL2_INCLUDE_DIRS=/opt/homebrew/include/SDL2
-- SDL2_LIBRARIES=/opt/homebrew/lib/libSDL2.dylib-framework Cocoa/opt/homebrew/lib/libSDL2main.a
-- DRAWBOX=/Users/ken/prog24/Drawbox/Library/SpaceCalc.cpp/Users/ken/prog24/Drawbox/Library/Color.cpp/Users/ken/prog24/Drawbox/Library/FinePoint.cpp/Users/ken/prog24/Drawbox/Library/DrawboxWindow.cpp/Users/ken/prog24/Drawbox/Library/DrErrMessages.cpp/Users/ken/prog24/Drawbox/Library/DrEventQ.cpp/Users/ken/prog24/Drawbox/Library/Image.cpp/Users/ken/prog24/Drawbox/Library/PVector.cpp/Users/ken/prog24/Drawbox/Library/Point.cpp/Users/ken/prog24/Drawbox/Library/Rect.cpp/Users/ken/prog24/Drawbox/Library/Timer.cpp/Users/ken/prog24/Drawbox/Library/SDL/Drawbox.SDL.cpp/Users/ken/prog24/Drawbox/Library/SDL/Keyboard.SDL.cpp
-- Configuring done (0.4s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/ken/prog24/Drawbox
-- Cache values
CMAKE_BUILD_TYPE:STRING=
CMAKE_INSTALL_PREFIX:PATH=/usr/local
CMAKE_OSX_ARCHITECTURES:STRING=
CMAKE_OSX_DEPLOYMENT_TARGET:STRING=
CMAKE_OSX_SYSROOT:PATH=/Library/Developer/CommandLineTools/SDKs/MacOSX14.2.sdk
SDL2MAIN_LIBRARY:FILEPATH=/opt/homebrew/lib/libSDL2main.a
SDL2_DIR:PATH=
SDL2_INCLUDE_DIR:PATH=/opt/homebrew/include/SDL2
SDL2_LIBRARY:STRING=/opt/homebrew/lib/libSDL2.dylib;-framework Cocoa
SDL2_TTF_INCLUDE_DIR:PATH=/opt/homebrew/include/SDL2
SDL2_TTF_LIBRARY:STRING=/opt/homebrew/lib/libSDL2_ttf.dylib
SDL2_ttf_DIR:PATH=/opt/homebrew/lib/cmake/SDL2_ttf
Вот выходные данные конфигурации, когда я повторно сохраняю CMakeLists.txt из VSCode:
[main] Configuring project: Drawbox
[proc] Executing command: /opt/homebrew/bin/cmake -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/clang -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/clang++ -Wno-dev --no-warn-unused-cli -S/Users/ken/prog24/Drawbox -B/Users/ken/prog24/Drawbox/build -G "Unix Makefiles"
[cmake] Not searching for unused variables given on the command line.
[cmake] -- SDL2_INCLUDE_DIRS=/opt/homebrew/include/SDL2
[cmake] -- SDL2_LIBRARIES=/opt/homebrew/lib/libSDL2.dylib-framework Cocoa/opt/homebrew/lib/libSDL2main.a
[cmake] -- DRAWBOX=/Users/ken/prog24/Drawbox/Library/SpaceCalc.cpp/Users/ken/prog24/Drawbox/Library/Color.cpp/Users/ken/prog24/Drawbox/Library/FinePoint.cpp/Users/ken/prog24/Drawbox/Library/DrawboxWindow.cpp/Users/ken/prog24/Drawbox/Library/DrErrMessages.cpp/Users/ken/prog24/Drawbox/Library/DrEventQ.cpp/Users/ken/prog24/Drawbox/Library/Image.cpp/Users/ken/prog24/Drawbox/Library/PVector.cpp/Users/ken/prog24/Drawbox/Library/Point.cpp/Users/ken/prog24/Drawbox/Library/Rect.cpp/Users/ken/prog24/Drawbox/Library/Timer.cpp/Users/ken/prog24/Drawbox/Library/SDL/Drawbox.SDL.cpp/Users/ken/prog24/Drawbox/Library/SDL/Keyboard.SDL.cpp
[cmake] -- Configuring done (0.0s)
[cmake] -- Generating done (0.0s)
[cmake] -- Build files have been written to: /Users/ken/prog24/Drawbox/build
Подробнее здесь: [url]https://stackoverflow.com/questions/79355437/cmake-build-on-mac-looking-for-wrong-architecture-libraries[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия