LINUX.ORG.RU

Intel Embree 3.12.1 32-bit

 


0

1

Взял слакбилд, попробовал собрать.

Вот с таким патчем собралось, но в деле пока не пробовал

--- common/simd/vint4_sse2.h.orig       2023-07-14 19:08:03.512552150 +0300
+++ common/simd/vint4_sse2.h    2023-07-14 19:08:41.408552764 +0300
@@ -444,7 +444,7 @@
   __forceinline int toScalar(const vint4& v) { return _mm_cvtsi128_si32(v); }

   __forceinline size_t toSizeT(const vint4& v) {
-#if defined(__WIN32__) && !defined(__X86_64__) // win32 workaround
+#if defined(__WIN32__) || !defined(__X86_64__) // win32 workaround
     return toScalar(v);
 #else
     return _mm_cvtsi128_si64(v);

и таким конфигом:

cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_INSTALL_MANDIR=/usr/man \
    -DCMAKE_INSTALL_DOCDIR=/usr/doc \
    -DEMBREE_ISPC_SUPPORT=OFF \
    -DEMBREE_ISA_AVX2:BOOL=OFF \
    -DEMBREE_ISA_AVX512SKX:BOOL=OFF \
    -DEMBREE_TASKING_SYSTEM=OFF \
    -DEMBREE_TUTORIALS=OFF \
    -DCMAKE_BUILD_TYPE=Release ..

В общем если соберу luxcorerender под 32-бит - то будет чем проверить.

Как я понимаю, это либу рэйтрэйсинга хочет новый Godot. Так что авось кому пригодится …

ps: luxcorerender-git собрался, но пришлось выкинуть поддержку OIDN (Open Image Denoiser)

cmake -DLUXCORE_DISABLE_OIDN:bool=ON -DLUXRAYS_DISABLE_CUDA:bool=ON ..

плюс патч на luxcorerender (хардкодит python39 , ибо у меня их два, 2.7 и 3.9 - на этом cmake лажает)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 72c1996ac..7af63b929 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -169,7 +169,7 @@ if (BUILD_LUXCORE_DLL)
        set(LUXCORE_LIBRARY luxcore)
        ADD_DEFINITIONS("-DLUXCORE_DLL")
 else()
-       set(LUXCORE_LIBRARY luxcore slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${OIDN_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
+       set(LUXCORE_LIBRARY luxcore slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
 endif()

 ################################################################################
diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake
index 5bd992b0d..ea6ba38b2 100644
--- a/cmake/Dependencies.cmake
+++ b/cmake/Dependencies.cmake
@@ -66,7 +66,7 @@ set(Boost_MINIMUM_VERSION       "1.56.0")

 # For Windows builds, PYTHON_V must be defined as "3x" (x=Python minor version, e.g. "35")
 # For other platforms, specifying python minor version is not needed
-set(LUXRAYS_BOOST_COMPONENTS thread program_options filesystem serialization iostreams regex system python${PYTHON_V} chrono serialization numpy${PYTHON_V})
+set(LUXRAYS_BOOST_COMPONENTS thread program_options filesystem serialization iostreams regex system python39 chrono serialization numpy${PYTHON_V})
 find_package(Boost ${Boost_MINIMUM_VERSION} COMPONENTS ${LUXRAYS_BOOST_COMPONENTS})
 if (NOT Boost_FOUND)
         # Try again with the other type of libs
diff --git a/deps/optix-7.1.0/include/optix_7_types.h b/deps/optix-7.1.0/include/optix_7_types.h
index fb1aa5b0b..e89efb097 100644
--- a/deps/optix-7.1.0/include/optix_7_types.h
+++ b/deps/optix-7.1.0/include/optix_7_types.h
@@ -627,7 +627,7 @@ typedef struct OptixBuildInput

 // TODO Define a static assert for C/pre-C++-11
 #if defined( __cplusplus ) && __cplusplus >= 201103L
-static_assert( sizeof( OptixBuildInput ) == 8 + 1024, "OptixBuildInput has wrong size" );
+//static_assert( sizeof( OptixBuildInput ) == 8 + 1024, "OptixBuildInput has wrong size" );
 #endif

 /// Flags set on the #OptixInstance::flags.
diff --git a/src/luxcore/CMakeLists.txt b/src/luxcore/CMakeLists.txt
index d797b749f..e0f99c398 100644
--- a/src/luxcore/CMakeLists.txt
+++ b/src/luxcore/CMakeLists.txt
@@ -152,7 +152,7 @@ set(LUXCORE_LIB_SRCS

 if (BUILD_LUXCORE_DLL)
        add_library(luxcore SHARED ${LUXCORE_LIB_SRCS} ${LUX_PARSER_SRC})
-       target_link_libraries(luxcore PRIVATE slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${OIDN_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
+       target_link_libraries(luxcore PRIVATE slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
 else()
        add_library(luxcore STATIC ${LUXCORE_LIB_SRCS} ${LUX_PARSER_SRC})
 endif()
@@ -180,10 +180,10 @@ include_directories(${LuxRays_SOURCE_DIR}/deps/opencolorio-2.0.0/include)

 add_definitions(-DOPENVDB_STATICLIB ${VISIBILITY_FLAGS})
 if(APPLE)
-       target_link_libraries(pyluxcore -Wl,-undefined -Wl,dynamic_lookup slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio expat ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${OIDN_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
+       target_link_libraries(pyluxcore -Wl,-undefined -Wl,dynamic_lookup slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio expat ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
     SET_TARGET_PROPERTIES(pyluxcore PROPERTIES XCODE_ATTRIBUTE_DEPLOYMENT_POSTPROCESSING NO) # exclude pylux from strip, not possible
 else()
-       target_link_libraries(pyluxcore PRIVATE slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${OIDN_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
+       target_link_libraries(pyluxcore PRIVATE slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
 endif()

 set_target_properties(pyluxcore PROPERTIES PREFIX "")
diff --git a/tests/luxcoreimplserializationdemo/CMakeLists.txt b/tests/luxcoreimplserializationdemo/CMakeLists.txt
index bdd3445b8..65286791b 100644
--- a/tests/luxcoreimplserializationdemo/CMakeLists.txt
+++ b/tests/luxcoreimplserializationdemo/CMakeLists.txt
@@ -31,4 +31,4 @@ include_directories(${LuxRays_SOURCE_DIR}/deps/opencolorio-2.0.0/include)

 add_executable(luxcoreimplserializationdemo ${LUXCOREIMPL_SERIALIZATIONDEMO_SRCS})

-TARGET_LINK_LIBRARIES(luxcoreimplserializationdemo luxcore slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY} ${OIDN_LIBRARY} ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
\ No newline at end of file
+TARGET_LINK_LIBRARIES(luxcoreimplserializationdemo luxcore slg-core slg-film slg-kernels luxrays bcd opensubdiv openvdb opencolorio ${BLOSC_LIBRARY} ${EMBREE_LIBRARY}  ${TBB_LIBRARY} ${TIFF_LIBRARIES} ${TIFF_LIBRARIES} ${OPENEXR_LIBRARIES} ${PNG_LIBRARIES} ${JPEG_LIBRARIES})
\ No newline at end of file
★★★★