Package Details: mingw-w64-assimp 5.0.1-3

Git Clone URL: https://aur.archlinux.org/mingw-w64-assimp.git (read-only, click to copy)
Package Base: mingw-w64-assimp
Description: Portable Open Source library to import various well-known 3D model formats in an uniform manner (mingw-w64)
Upstream URL: http://www.assimp.org/
Licenses: BSD
Submitter: xantares
Maintainer: xantares
Last Packager: xantares
Votes: 2
Popularity: 0.000201
First Submitted: 2015-10-30 17:33
Last Updated: 2021-06-09 17:07

Latest Comments

xantares commented on 2021-06-09 17:06

It should be fixed now

Martchus commented on 2021-06-09 15:40

Luckily assimp is only an optional dependency for mingw-w64-qt6-quick3d. I guess for now I'll simply disable the feature completely.

Btw, it looks like the regular package is also using the bundled version and they also ran into the build error: https://github.com/archlinux/svntogit-packages/blob/packages/qt6-quick3d/trunk/qt6-3d-gcc11.patch

Martchus commented on 2021-06-09 14:54

I was trying to compile mingw-w64-quick3d for the 6.1.1 update and ran into the following error:

  31 -- Running syncqt for module: 'QtQuick3DAssetImport'
  32 CMake Warning (dev) at /usr/i686-w64-mingw32/lib/cmake/assimp-5.0/assimpTargets.cmake:54 (if):
  33   if given arguments:
  34 
  35     "ON"
  36 
  37   An argument named "ON" appears in a conditional statement.  Policy CMP0012
  38   is not set: if() recognizes numbers and boolean constants.  Run "cmake
  39   --help-policy CMP0012" for policy details.  Use the cmake_policy command to
  40   set the policy and suppress this warning.
  41 Call Stack (most recent call first):
  42   /usr/i686-w64-mingw32/lib/cmake/assimp-5.0/assimp-config.cmake:1 (include)
  43   cmake/FindWrapQuick3DAssimp.cmake:7 (find_package)
  44   /usr/i686-w64-mingw32/lib/cmake/Qt6/QtFindPackageHelpers.cmake:113 (find_package)
  45   src/plugins/assetimporters/configure.cmake:13 (qt_find_package)
  46   src/plugins/assetimporters/CMakeLists.txt:9 (include)
  47 This warning is for project developers.  Use -Wno-dev to suppress it.
  48 
  49 -- Found WrapQuick3DAssimp: TRUE (Required is at least version "5")
  50 -- Performing Test Assimp
  51 CMake Warning (dev) at /usr/i686-w64-mingw32/lib/cmake/assimp-5.0/assimpTargets.cmake:54 (if):
  52   if given arguments:
  53 
  54     "ON"
  55 
  56   An argument named "ON" appears in a conditional statement.  Policy CMP0012
  57   is not set: if() recognizes numbers and boolean constants.  Run "cmake
  58   --help-policy CMP0012" for policy details.  Use the cmake_policy command to
  59   set the policy and suppress this warning.
  60 Call Stack (most recent call first):
  61   /usr/i686-w64-mingw32/lib/cmake/assimp-5.0/assimp-config.cmake:1 (include)
  62   /build/mingw-w64-qt6-quick3d/src/qtquick3d-everywhere-src-6.1.0/cmake/FindWrapQuick3DAssimp.cmake:7 (find_package)
  63   /build/mingw-w64-qt6-quick3d/src/qtquick3d-everywhere-src-6.1.0/config.tests/quick3d_assimp/CMakeLists.txt:7 (find_package)
  64 This warning is for project developers.  Use -Wno-dev to suppress it.
  65 
  66 -- Performing Test Assimp - Failed
…
  95 Configure summary:
  96 
  97 QtQuick3D:
  98   Assimp ................................. yes
  99   System Assimp .......................... no

Apparently Qt's build system is unable to make use of the package. I've only noticed it now because now the bundled assimp no longer compiles (likely just a missing #include).

I've also noticed that there's no static version of the library which would be needed for the static Qt builds. If you look at the condition producing the warning within the CMake module that's actually the condition to distinguish shared from static builds so likely this is a prime example for a library where the static version can not easily be installed alongside the shared version (without running into configuration issues). Maybe I'll just try to make it work with the bundled version for now.

patlefort commented on 2020-11-03 19:15

Yes that's what I meant.

xantares commented on 2020-11-03 13:03

you mean it doesnt build ?

patlefort commented on 2020-11-03 00:36

I detected a small problem: This package will use minizip if it's installed. It will however not work if mingw-w64-minizip2 is installed, it only work with mingw-w64-minizip, which conflicts with the former.

Martchus commented on 2020-10-14 17:09

Could you also avoid using curl directly (e.g. https://github.com/Martchus/PKGBUILDs/blob/master/assimp/mingw-w64/PKGBUILD)? (But don't bump again for this.)

xantares commented on 2020-10-12 16:22

should be ok now

Martchus commented on 2020-10-12 02:19

When using this for building Qt 6 I get the following error:

CMake Error at /usr/i686-w64-mingw32/lib/cmake/assimp-5.0/assimpTargets.cmake:85 (message):
  The imported target "assimp::assimp" references the file

     "/usr/i686-w64-mingw32/lib/libassimp.dll.5"

  but this file does not exist.  Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/usr/i686-w64-mingw32/lib/cmake/assimp-5.0/assimpTargets.cmake"

  but not all the files it references.

Call Stack (most recent call first):
  /usr/i686-w64-mingw32/lib/cmake/assimp-5.0/assimp-config.cmake:1 (include)
  cmake/FindWrapAssimp.cmake:8 (find_package)
  /usr/i686-w64-mingw32/lib/cmake/Qt6/QtFindPackageHelpers.cmake:109 (find_package)
  src/plugins/assetimporters/configure.cmake:13 (qt_find_package)
  src/plugins/assetimporters/CMakeLists.txt:9 (include)

It looks like the if(MSVC) in assimp-Targets-release.cmake should actually be if(WIN32). And the default for ASSIMP_LIBRARY_SUFFIX should just be an empty string when using MinGW.

outfrost commented on 2020-08-06 00:13

If anyone has issues linking to libassimp 5.0.1 under mingw, or issues building assimp under mingw, try using the latest version from git.

First, makepkg --nobuild to set up the source directory. Then, replace the contents of src/assimp-5.0.1/ with a fresh checkout from https://github.com/assimp/assimp.git. Finally, run makepkg -esi.

I'm writing this, because a few key issues for mingw-w64 builds have been resolved recently, but haven't made it into a release yet.