https://bugzilla.rpmfusion.org/show_bug.cgi?id=2347
--- Comment #2 from pcpa <paulo.cesar.pereira.de.andrade(a)gmail.com> 2012-06-05
17:21:35 CEST ---
(In reply to comment #1)
You depend on squish for this package.
(I will try to make a new snapshot).
The binaries should be located in the main package (library will be provided in
a libs sub-package for multilibs compliance).
This package can be built with CUDA indeed, so it might worth to make a nonfree
alternatives. (You can have a look on OpenEXR_Viewers-nonfree for example
despite I don't know how to deal with alternate library in this case, and if
relevant).
[In a Mandriva cooker computer right now, but good enough to test]
I tried a quick build with a system wide squish, building and installing
the package from
https://bugzilla.rpmfusion.org/show_bug.cgi?id=584
and a simple
%if %{with_system_squish}
sed -e 's/\(ADD_SUBDIRECTORY(squish)\)/#\1/' -i src/nvtt/CMakeLists.txt
%endif
in nvidia-texture-tools.spec, but it failed:
[...]
[ 79%] Building CXX object
src/nvtt/CMakeFiles/nvtt.dir/cuda/CudaCompressDXT.cpp.o
cd /home/pcpa/rpm/BUILD/nvidia-texture-tools/build/src/nvtt && /usr/bin/c++
-Dnvtt_EXPORTS -DNVTT_EXPORTS -DNVTT_SHARED=1 -O2 -Wa,--compress-debug-sections
-gdwarf-4 -fvar-tracking-assignments -frecord-gcc-switches -Wstrict-aliasing=2
-pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
-fstack-protector --param=ssp-buffer-size=4 -fPIC -march=athlon64 -fPIC
-I/home/pcpa/rpm/BUILD/nvidia-texture-tools/src
-I/home/pcpa/rpm/BUILD/nvidia-texture-tools/build/src
-I/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt -I/usr/lib/qt4/include
-I/home/pcpa/rpm/BUILD/nvidia-texture-tools/build/src/nvtt -o
CMakeFiles/nvtt.dir/cuda/CudaCompressDXT.cpp.o -c
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/cuda/CudaCompressDXT.cpp
Linking CXX shared library libnvtt.so
cd /home/pcpa/rpm/BUILD/nvidia-texture-tools/build/src/nvtt && /usr/bin/cmake
-E cmake_link_script CMakeFiles/nvtt.dir/link.txt --verbose=1
/usr/bin/c++ -fPIC -O2 -Wa,--compress-debug-sections -gdwarf-4
-fvar-tracking-assignments -frecord-gcc-switches -Wstrict-aliasing=2 -pipe
-Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector
--param=ssp-buffer-size=4 -fPIC -march=athlon64 -Wl,--as-needed
-Wl,--no-undefined -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags
-Wl,--hash-style=gnu -shared -Wl,-soname,libnvtt.so.2.0 -o libnvtt.so.2.0.8
CMakeFiles/nvtt.dir/nvtt.cpp.o CMakeFiles/nvtt.dir/Compressor.cpp.o
CMakeFiles/nvtt.dir/nvtt_wrapper.cpp.o CMakeFiles/nvtt.dir/CompressDXT.cpp.o
CMakeFiles/nvtt.dir/CompressRGB.cpp.o
CMakeFiles/nvtt.dir/QuickCompressDXT.cpp.o
CMakeFiles/nvtt.dir/OptimalCompressDXT.cpp.o
CMakeFiles/nvtt.dir/CompressionOptions.cpp.o
CMakeFiles/nvtt.dir/InputOptions.cpp.o CMakeFiles/nvtt.dir/OutputOptions.cpp.o
CMakeFiles/nvtt.dir/cuda/CudaUtils.cpp.o
CMakeFiles/nvtt.dir/cuda/CudaCompressDXT.cpp.o ../nvcore/libnvcore.so.2.0.8
../nvmath/libnvmath.so.2.0.8 ../nvimage/libnvimage.so.2.0.8 -lsquish
../nvmath/libnvmath.so.2.0.8 ../nvcore/libnvcore.so.2.0.8 -ldl -lpng -lz -ljpeg
-ltiff ../nvcore/poshlib/libposh.a
CMakeFiles/nvtt.dir/CompressDXT.cpp.o: In function
`nv::SlowCompressor::compressDXT1(nvtt::CompressionOptions::Private const&,
nvtt::OutputOptions::Private const&)':
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:208:
undefined reference to `squish::WeightedClusterFit::WeightedClusterFit()'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:211:
undefined reference to `squish::WeightedClusterFit::SetMetric(float, float,
float)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:224:
undefined reference to `squish::ColourSet::ColourSet(unsigned char const*, int,
bool)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:225:
undefined reference to
`squish::WeightedClusterFit::SetColourSet(squish::ColourSet const*, int)'
CMakeFiles/nvtt.dir/CompressDXT.cpp.o: In function
`nv::SlowCompressor::compressDXT1a(nvtt::CompressionOptions::Private const&,
nvtt::OutputOptions::Private const&)':
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:245:
undefined reference to `squish::WeightedClusterFit::WeightedClusterFit()'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:246:
undefined reference to `squish::WeightedClusterFit::SetMetric(float, float,
float)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:268:
undefined reference to `squish::ColourSet::ColourSet(unsigned char const*, int,
bool)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:269:
undefined reference to
`squish::WeightedClusterFit::SetColourSet(squish::ColourSet const*, int)'
CMakeFiles/nvtt.dir/CompressDXT.cpp.o: In function
`nv::SlowCompressor::compressDXT3(nvtt::CompressionOptions::Private const&,
nvtt::OutputOptions::Private const&)':
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:289:
undefined reference to `squish::WeightedClusterFit::WeightedClusterFit()'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:291:
undefined reference to `squish::WeightedClusterFit::SetMetric(float, float,
float)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:308:
undefined reference to `squish::ColourSet::ColourSet(unsigned char const*, int,
bool)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:309:
undefined reference to
`squish::WeightedClusterFit::SetColourSet(squish::ColourSet const*, int)'
CMakeFiles/nvtt.dir/CompressDXT.cpp.o: In function
`nv::SlowCompressor::compressDXT5(nvtt::CompressionOptions::Private const&,
nvtt::OutputOptions::Private const&)':
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:328:
undefined reference to `squish::WeightedClusterFit::WeightedClusterFit()'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:329:
undefined reference to `squish::WeightedClusterFit::SetMetric(float, float,
float)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:353:
undefined reference to `squish::ColourSet::ColourSet(unsigned char const*, int,
bool)'
/home/pcpa/rpm/BUILD/nvidia-texture-tools/src/nvtt/CompressDXT.cpp:354:
undefined reference to
`squish::WeightedClusterFit::SetColourSet(squish::ColourSet const*, int)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/nvtt/libnvtt.so.2.0.8] Error 1
make[2]: Leaving directory `/home/pcpa/rpm/BUILD/nvidia-texture-tools/build'
make[1]: *** [src/nvtt/CMakeFiles/nvtt.dir/all] Error 2
make[1]: Leaving directory `/home/pcpa/rpm/BUILD/nvidia-texture-tools/build'
make: *** [all] Error 2
error: Código de saída mau de /var/tmp/rpm-tmp.30602 (%build)
Erros de construção do RPM:
Código de saída mau de /var/tmp/rpm-tmp.30602 (%build)
[...]
Updating to use latest upstream release, squish 1.11 fails the same way.
Looking at the sources, I see not much changes in the history in
http://code.google.com/p/nvidia-texture-tools/source/browse/trunk/src/nvt...
but a patch should not be trivial, for example, prototype in the
bundled nvidia-texture-tools:
ColourSet::ColourSet( u8 const* rgba, int flags, bool
createMinimalSet/*=false*/ )
and in squish 1.11:
ColourSet::ColourSet( u8 const* rgba, int mask, int flags )
also, it actually did build up to there due to not removing the
bundled squish directory, otherwise, would fail due to missing
includes:
nvidia-texture-tools/src/nvtt/CompressDXT.cpp:
[...]
// squish
#include "squish/colourset.h"
//#include "squish/clusterfit.h"
#include "squish/fastclusterfit.h"
#include "squish/weightedclusterfit.h"
[...]
as squish-devel installs only %{_includedir}/squish/squish.h
Do you have contacts with upstream? It should be trivial to
upstream to write a proper patch, but I think it may be required
that squish-devel install more headers.
Apparently ubuntu ppa packages do not use a system squish:
https://launchpad.net/~wfg/+archive/0ad
https://launchpad.net/nvidia-texture-tools
The only squish I found is another unrelated package:
https://launchpad.net/squish
--
Configure bugmail:
https://bugzilla.rpmfusion.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.