View Issue Details

IDProjectCategoryView StatusLast Update
0009138ScribusBuild Systempublic2010-12-14 16:32
Reporterhaawda Assigned Toplinnell 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionno change required 
Platformx86_64OSArch LinuxOS Versionrecent
Product Version1.5.0svn 
Target Version1.5.0 
Summary0009138: Linking fails
DescriptionThe build fails at the linking step (cmake says 77%). Using gcc 4.5.0.

[ 77%] Building CXX object scribus/CMakeFiles/scribus.dir/main.cpp.o
Linking CXX executable scribus
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::getAvailableProfileInfo(QString const&, bool)':
sclcmscolormgmtengineimpl.cpp:(.text+0xe73): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x10bc): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x10d4): undefined reference to `cmsOpenProfileFromFile'
sclcmscolormgmtengineimpl.cpp:(.text+0x10e8): undefined reference to `cmsTakeProductDesc'
sclcmscolormgmtengineimpl.cpp:(.text+0x1147): undefined reference to `cmsCloseProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x12cd): undefined reference to `cmsGetColorSpace'
sclcmscolormgmtengineimpl.cpp:(.text+0x12e3): undefined reference to `cmsGetDeviceClass'
sclcmscolormgmtengineimpl.cpp:(.text+0x1306): undefined reference to `cmsCloseProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x130d): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x148e): undefined reference to `cmsCloseProfile'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::createProfile_Lab(ScColorMgmtEngine&)':
sclcmscolormgmtengineimpl.cpp:(.text+0x17c7): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x17ce): undefined reference to `cmsCreateLabProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x1916): undefined reference to `cmsCloseProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x191d): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x1a71): undefined reference to `cmsCloseProfile'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::createProfile_sRGB(ScColorMgmtEngine&)':
sclcmscolormgmtengineimpl.cpp:(.text+0x1b67): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x1b6c): undefined reference to `cmsCreate_sRGBProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x1cb6): undefined reference to `cmsCloseProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x1cbd): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x1e11): undefined reference to `cmsCloseProfile'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::openProfileFromMem(ScColorMgmtEngine&, QByteArray const&)':
sclcmscolormgmtengineimpl.cpp:(.text+0x1eb4): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x1ec5): undefined reference to `cmsOpenProfileFromMem'
sclcmscolormgmtengineimpl.cpp:(.text+0x2038): undefined reference to `cmsCloseProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x203f): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x220c): undefined reference to `cmsCloseProfile'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::openProfileFromFile(ScColorMgmtEngine&, QString const&)':
sclcmscolormgmtengineimpl.cpp:(.text+0x230e): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x2396): undefined reference to `cmsOpenProfileFromMem'
sclcmscolormgmtengineimpl.cpp:(.text+0x24fe): undefined reference to `cmsCloseProfile'
sclcmscolormgmtengineimpl.cpp:(.text+0x253b): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x26c6): undefined reference to `cmsCloseProfile'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::createProofingTransform(ScColorMgmtEngine&, ScColorProfile const&, eColorFormat, ScColorProfile const&, eColorFormat, ScColorProfile const&, eRenderIntent, eRenderIntent, long)':
sclcmscolormgmtengineimpl.cpp:(.text+0x2c2f): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x2c6f): undefined reference to `cmsCreateProofingTransform'
sclcmscolormgmtengineimpl.cpp:(.text+0x2e05): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x30af): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x30df): undefined reference to `cmsCreateTransform'
sclcmscolormgmtengineimpl.cpp:(.text+0x358d): undefined reference to `cmsDeleteTransform'
sclcmscolormgmtengineimpl.cpp:(.text+0x3652): undefined reference to `cmsDeleteTransform'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::createTransform(ScColorMgmtEngine&, ScColorProfile const&, eColorFormat, ScColorProfile const&, eColorFormat, eRenderIntent, long)':
sclcmscolormgmtengineimpl.cpp:(.text+0x3c44): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x3c70): undefined reference to `cmsCreateTransform'
sclcmscolormgmtengineimpl.cpp:(.text+0x3dea): undefined reference to `cmsSetErrorHandler'
sclcmscolormgmtengineimpl.cpp:(.text+0x4056): undefined reference to `cmsDeleteTransform'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolormgmtengineimpl.cpp.o): In function `ScLcmsColorMgmtEngineImpl::ScLcmsColorMgmtEngineImpl()':
sclcmscolormgmtengineimpl.cpp:(.text+0x41e7): undefined reference to `cmsSetAlarmCodes'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolorprofileimpl.cpp.o): In function `ScLcmsColorProfileImpl::deviceClass() const':
sclcmscolorprofileimpl.cpp:(.text+0x1e): undefined reference to `cmsGetDeviceClass'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolorprofileimpl.cpp.o): In function `ScLcmsColorProfileImpl::colorSpace() const':
sclcmscolorprofileimpl.cpp:(.text+0x4e): undefined reference to `cmsGetColorSpace'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolorprofileimpl.cpp.o): In function `ScLcmsColorProfileImpl::productDescription() const':
sclcmscolorprofileimpl.cpp:(.text+0x9e): undefined reference to `cmsTakeProductDesc'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolorprofileimpl.cpp.o): In function `ScLcmsColorProfileImpl::closeProfile()':
sclcmscolorprofileimpl.cpp:(.text+0x17e): undefined reference to `cmsCloseProfile'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolortransformimpl.cpp.o): In function `ScLcmsColorTransformImpl::apply(void*, void*, unsigned int)':
sclcmscolortransformimpl.cpp:(.text+0x20): undefined reference to `cmsDoTransform'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolortransformimpl.cpp.o): In function `ScLcmsColorTransformImpl::apply(QByteArray&, QByteArray&, unsigned int)':
sclcmscolortransformimpl.cpp:(.text+0xa6): undefined reference to `cmsDoTransform'
colormgmt/libscribus_colormgmt_lib.a(sclcmscolortransformimpl.cpp.o): In function `ScLcmsColorTransformImpl::deleteTransform()':
sclcmscolortransformimpl.cpp:(.text+0x13e): undefined reference to `cmsDeleteTransform'
collect2: ld gab 1 als Ende-Status zurück
make[2]: *** [scribus/scribus] Fehler 1
make[1]: *** [scribus/CMakeFiles/scribus.dir/all] Fehler 2
make: *** [all] Fehler 2
Steps To ReproduceBuild scribus.
TagsNo tags attached.
Patch

Relationships

has duplicate 0009708 closedplinnell Linking fails when using CAIRO_PRIVATE 

Activities

plinnell

2010-06-06 21:11

viewer   ~0023998

looks like you might be missing littecms header files, although the build system should detect its missing

haawda

2010-06-07 18:28

reporter   ~0024005

Arch Linux does not disinct between normal and devel versions, but maybe the version in the repos is too old. Will try with the version from git.

haawda

2010-06-08 20:39

reporter   ~0024015

Last edited: 2010-06-08 20:44

Same errors when using the git sources for littecms. Is it true that there are only two header files in littecms?

huhtiranta

2010-09-05 19:59

reporter   ~0024561

Last edited: 2010-09-05 20:28

I managed to link Scribus successfully by removing the "-Wl,--as-needed" flag from the link command and running it manually.

This worked regardless of the lcms version.
I assume this is a bug in the linker.

UPDATE:
I used sed to remove the offending flag from $srcdir/Scribus-build/scribus/CMakeFiles/scribus.dir/link.txt after running cmake.

Here's the command in case anyone needs it:
sed -i 's/-Wl,--as-needed//' $srcdir/Scribus-build/scribus/CMakeFiles/scribus.dir/link.txt

plinnell

2010-12-14 16:32

viewer   ~0025132

I almost sure its a bug in the linker as openSUSE uses this as well without issues.

plinnell

2010-12-14 16:32

viewer   ~0025133

Closing

Issue History

Date Modified Username Field Change
2010-06-06 11:11 haawda New Issue
2010-06-06 21:11 plinnell Note Added: 0023998
2010-06-07 18:28 haawda Note Added: 0024005
2010-06-08 20:39 haawda Note Added: 0024015
2010-06-08 20:44 haawda Note Edited: 0024015
2010-06-11 21:40 jghali Target Version => 1.5.0
2010-09-05 19:59 huhtiranta Note Added: 0024561
2010-09-05 20:25 huhtiranta Note Edited: 0024561
2010-09-05 20:28 huhtiranta Note Edited: 0024561
2010-12-14 16:32 plinnell Note Added: 0025132
2010-12-14 16:32 plinnell Status new => resolved
2010-12-14 16:32 plinnell Resolution open => no change required
2010-12-14 16:32 plinnell Assigned To => plinnell
2010-12-14 16:32 plinnell Note Added: 0025133
2010-12-14 16:32 plinnell Status resolved => closed
2011-02-03 14:39 plinnell Relationship added has duplicate 0009708