Skip to content

CMake error (missing: AnyImageImporter) #85

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
sheerluck opened this issue May 17, 2020 · 6 comments
Closed

CMake error (missing: AnyImageImporter) #85

sheerluck opened this issue May 17, 2020 · 6 comments

Comments

@sheerluck
Copy link
Contributor

-- The CXX compiler identification is GNU 9.3.0
-- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++
-- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++ - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Corrade: /usr/include  found components: Containers rc Utility 
-- Found Magnum: /usr/include   
-- Found Corrade: /usr/include  found components: Containers rc Utility PluginManager 
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:164 (message):
  Could NOT find Magnum (missing: AnyImageImporter)
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:445 (_FPHSA_FAILURE_MESSAGE)
  modules/FindMagnum.cmake:988 (find_package_handle_standard_args)
  src/MagnumPlugins/AssimpImporter/CMakeLists.txt:27 (find_package)

Somehow AnyImageImporter is missing even when Magnum is built with

    local mycmakeargs=(
        -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
        -DCMAKE_BUILD_TYPE=Release
        -DWITH_AUDIO=ON
        -DWITH_GLXAPPLICATION=ON
        -DWITH_GLFWAPPLICATION=ON
        -DWITH_SDL2APPLICATION=ON
        -DWITH_WINDOWLESSGLXAPPLICATION=ON
        -DWITH_EGLCONTEXT=ON
        -DWITH_GLXCONTEXT=ON
        -DWITH_OPENGLTESTER=ON
        -DWITH_ANYAUDIOIMPORTER=ON
        -DWITH_ANYIMAGECONVERTER=ON
        -DWITH_ANYIMAGEIMPORTER=ON
        -DWITH_ANYSCENECONVERTER=ON
        -DWITH_ANYSCENEIMPORTER=ON
        -DWITH_MAGNUMFONT=ON
        -DWITH_MAGNUMFONTCONVERTER=ON
        -DWITH_OBJIMPORTER=ON
        -DWITH_TGAIMAGECONVERTER=ON
        -DWITH_TGAIMPORTER=ON
        -DWITH_WAVAUDIOIMPORTER=ON
        -DWITH_DISTANCEFIELDCONVERTER=ON
        -DWITH_IMAGECONVERTER=ON
        -DWITH_SCENECONVERTER=ON
        -DWITH_FONTCONVERTER=ON
        -DWITH_GL_INFO=ON
        -DWITH_AL_INFO=ON
    )

and I have

$ tree /usr/include/MagnumPlugins/AnyImageImporter
/usr/include/MagnumPlugins/AnyImageImporter
├── AnyImageImporter.h
└── configure.h
@mosra
Copy link
Owner

mosra commented May 17, 2020

Hi, thanks for the detailed report!

Hmm. Since the includes are there, it looks like the binary might be missing. Does /usr/lib/magnum (or /usr/lib/magnum-d) exist, and does it contain importers/AnyImageImporter.so?

@mosra mosra added this to the 2020.0a milestone May 17, 2020
@sheerluck
Copy link
Contributor Author

I only got this shared objects:

$ equery files magnum | grep so$
/usr/lib64/libMagnum.so
/usr/lib64/libMagnumAudio.so
/usr/lib64/libMagnumDebugTools.so
/usr/lib64/libMagnumGL.so
/usr/lib64/libMagnumMeshTools.so
/usr/lib64/libMagnumPrimitives.so
/usr/lib64/libMagnumSceneGraph.so
/usr/lib64/libMagnumShaders.so
/usr/lib64/libMagnumText.so
/usr/lib64/libMagnumTextureTools.so
/usr/lib64/libMagnumTrade.so

@sheerluck
Copy link
Contributor Author

$ equery files magnum | grep libMagnum
/usr/lib64/libMagnum.so
/usr/lib64/libMagnum.so.2
/usr/lib64/libMagnum.so.2.3
/usr/lib64/libMagnumAudio.so
/usr/lib64/libMagnumAudio.so.2
/usr/lib64/libMagnumAudio.so.2.3
/usr/lib64/libMagnumDebugTools.so
/usr/lib64/libMagnumDebugTools.so.2
/usr/lib64/libMagnumDebugTools.so.2.3
/usr/lib64/libMagnumEglContext.a
/usr/lib64/libMagnumGL.so
/usr/lib64/libMagnumGL.so.2
/usr/lib64/libMagnumGL.so.2.3
/usr/lib64/libMagnumGlfwApplication.a
/usr/lib64/libMagnumGlxApplication.a
/usr/lib64/libMagnumGlxContext.a
/usr/lib64/libMagnumMeshTools.so
/usr/lib64/libMagnumMeshTools.so.2
/usr/lib64/libMagnumMeshTools.so.2.3
/usr/lib64/libMagnumOpenGLTester.a
/usr/lib64/libMagnumPrimitives.so
/usr/lib64/libMagnumPrimitives.so.2
/usr/lib64/libMagnumPrimitives.so.2.3
/usr/lib64/libMagnumSceneGraph.so
/usr/lib64/libMagnumSceneGraph.so.2
/usr/lib64/libMagnumSceneGraph.so.2.3
/usr/lib64/libMagnumSdl2Application.a
/usr/lib64/libMagnumShaders.so
/usr/lib64/libMagnumShaders.so.2
/usr/lib64/libMagnumShaders.so.2.3
/usr/lib64/libMagnumText.so
/usr/lib64/libMagnumText.so.2
/usr/lib64/libMagnumText.so.2.3
/usr/lib64/libMagnumTextureTools.so
/usr/lib64/libMagnumTextureTools.so.2
/usr/lib64/libMagnumTextureTools.so.2.3
/usr/lib64/libMagnumTrade.so
/usr/lib64/libMagnumTrade.so.2
/usr/lib64/libMagnumTrade.so.2.3
/usr/lib64/libMagnumWindowlessGlxApplication.a

@mosra
Copy link
Owner

mosra commented May 17, 2020

Ah, this is Gentoo, right? The ebuild was contributed and I unfortunately have no way to test it here, and have basically zero experience with ebuilds or the cmake automagic used there.

It seems that the /usr/lib64/magnum directory got deleted while packing or something like that. Does the build log mention anything related to it? Can you upload the full log somewhere?

@sheerluck
Copy link
Contributor Author

I was able to solve this issue with slightly modified ebuilds:

--- a/magnum-9999.ebuild
+++ b/magnum-9999.ebuild
@@ -1,8 +1,8 @@
-EAPI=5
+EAPI=7
 
 EGIT_REPO_URI="git://github.com/mosra/magnum.git"
 
-inherit cmake-utils git-r3
+inherit cmake git-r3
 
 DESCRIPTION="C++11/C++14 graphics middleware for games and data visualization"
 HOMEPAGE="https://magnum.graphics"
@@ -50,7 +50,13 @@
 		-DWITH_GL_INFO=ON
 		-DWITH_AL_INFO=ON
 	)
-	cmake-utils_src_configure
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+	mkdir "${ED}/usr/$(get_libdir)/magnum/"
+	cp -av "${BUILD_DIR}"/Gentoo/lib/magnum/* "${ED}/usr/$(get_libdir)/magnum/" || die
 }
 
 # kate: replace-tabs off;

and

--- a/magnum-plugins-9999.ebuild
+++ b/magnum-plugins-9999.ebuild
@@ -1,8 +1,8 @@
-EAPI=5
+EAPI=7
 
 EGIT_REPO_URI="git://github.com/mosra/magnum-plugins.git"
 
-inherit cmake-utils git-r3
+inherit cmake git-r3
 
 DESCRIPTION="Plugins for the Magnum C++11/C++14 graphics engine"
 HOMEPAGE="https://magnum.graphics"
@@ -55,7 +55,13 @@
 		-DWITH_STLIMPORTER=ON
 		-DWITH_TINYGLTFIMPORTER=ON
 	)
-	cmake-utils_src_configure
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+	mkdir "${ED}/usr/$(get_libdir)/magnum/"
+	cp -av "${BUILD_DIR}"/Gentoo/lib/magnum/* "${ED}/usr/$(get_libdir)/magnum/" || die
 }
 
 # kate: replace-tabs off;

@mosra
Copy link
Owner

mosra commented May 17, 2020

Wonderful, thank you. Commited as mosra/magnum@148dd27 and 2de167f.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

2 participants