Author Topic: problem with rpmrebuild (dlerror,dlopen) (solved)  (Read 652 times)

landgraf

  • Guest
problem with rpmrebuild (dlerror,dlopen) (solved)
« on: November 28, 2010, 02:29:26 AM »
Hi.
I'm trying to build spice support in PCLOS and I have to rebuild cegui. I cannot do it, because I get such errors with my self-made spec and spec from pclos as well:
Code: [Select]
.libs/libCEGUIBase_la-CEGUIDynamicModule.o: In function `CEGUI::DynamicModule::getFailureString() const':
CEGUIDynamicModule.cpp:(.text+0x61): undefined reference to `dlerror'
.libs/libCEGUIBase_la-CEGUIDynamicModule.o: In function `CEGUI::DynamicModule::getSymbolAddress(CEGUI::String const&) const':
CEGUIDynamicModule.cpp:(.text+0x11d): undefined reference to `dlsym'
.libs/libCEGUIBase_la-CEGUIDynamicModule.o: In function `CEGUI::DynamicModule::~DynamicModule()':
CEGUIDynamicModule.cpp:(.text+0x154): undefined reference to `dlclose'
.libs/libCEGUIBase_la-CEGUIDynamicModule.o: In function `CEGUI::DynamicModule::~DynamicModule()':
CEGUIDynamicModule.cpp:(.text+0x194): undefined reference to `dlclose'
.libs/libCEGUIBase_la-CEGUIDynamicModule.o: In function `CEGUI::DynamicModule::DynamicModule(CEGUI::String const&)':
CEGUIDynamicModule.cpp:(.text+0x819): undefined reference to `dlopen'
CEGUIDynamicModule.cpp:(.text+0xb73): undefined reference to `dlopen'
.libs/libCEGUIBase_la-CEGUIDynamicModule.o: In function `CEGUI::DynamicModule::DynamicModule(CEGUI::String const&)':
CEGUIDynamicModule.cpp:(.text+0x1209): undefined reference to `dlopen'
CEGUIDynamicModule.cpp:(.text+0x1563): undefined reference to `dlopen'
collect2: ld returned 1 exit status

How can I build this packages?
« Last Edit: November 28, 2010, 02:42:43 AM by landgraf »

landgraf

  • Guest
Re: problem with rpmrebuild (dlerror,dlopen)
« Reply #1 on: November 28, 2010, 02:42:23 AM »
OK. I found solutions in vesa drv package:
Code: [Select]
# Need to access symbols from the X Server and other dlopen'ed modules
%define _disable_ld_no_undefined 1

Offline MBantz

  • PCLinuxOS Tester
  • Hero Member
  • *******
  • Posts: 1317
Re: problem with rpmrebuild (dlerror,dlopen) (solved)
« Reply #2 on: November 29, 2010, 02:47:17 PM »
Hi Landgraf,

I'm also packaging libce - or at least trying to - for a go at Secret Maryo Chronicles. It build fine, but the resulting files are .so development files only. When I use this libce build in an end-user application it pulls a bunch of -devel files in,

does this happen to you as well?

I have left the build for now of Secret Maryo until this is solved,

cheers,
MBantz

Offline travisN000

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1758
Re: problem with rpmrebuild (dlerror,dlopen) (solved)
« Reply #3 on: November 29, 2010, 06:56:07 PM »
Hi Martin-

I had a few more minutes and did a little searching on this; I was comparing the Mandriva RPM to ours using rpmbone...  They seem to have a much longer list of requirements; perhaps we are missing a few?

To compare, take a look at these (compare requires & files contained in RPM):

libCEGUI
PCLOS:  http://rpm.pbone.net/index.php3/stat/4/idpl/13862747/dir/pclinuxos/com/libCEGUI0-0.7.1-1pclos2010.i586.rpm.html
MANDY: http://rpm.pbone.net/index.php3/stat/4/idpl/14255476/dir/mandriva_2010/com/libCEGUI0.7.1-0.7.1-3mdv2010.1.i586.rpm.html

libCEGUI-devel
PCLOS:  http://rpm.pbone.net/index.php3/stat/4/idpl/13862748/dir/pclinuxos/com/libCEGUI0-devel-0.7.1-1pclos2010.i586.rpm.html
MANDY:  http://rpm.pbone.net/index.php3/stat/4/idpl/14255473/dir/mandriva_2010/com/libCEGUI-devel-0.7.1-3mdv2010.1.i586.rpm.html


...if you want to grab their SRPM for a closer look here is the direct link:
http://rpm.pbone.net/index.php3/stat/26/dist/70/size/7618413/name/CEGUI-0.7.1-3mdv2010.1.src.rpm
 ;D


EDIT:
..curiosity got the best of me so I d/l and installed the mandriva SRPM; they have an "underlinking" patch for v0.7.1 that we don't have, as well as a handful of BuildRequires and %configure options that differ from ours.  Perhaps there is something useful there.. ??

Mandriva has a wiki page on fixing underlinking issues (link) in packaging..


EDIT2:
..to build the mandy SRPM, change the build req's from freeimage-devel to FreeImage-devel (..it is case-sensitive)  ;)


EDIT3:
..I rebuilt the mandy SRPM linked above for PCLOS after changing freeimage as above, but I was unable to install libCEGUI-devel.  It built successfully and without errors, but gave the following error when trying to install it:

Code: [Select]
The following packages have unmet dependencies:
  libCEGUI-devel: Depends: devel(libatiuki) but it is not installable
E: Broken packages

A google search indicates that libatiuki should be part of the x11-driver-video-fglrx package, and in synaptic fglrx-devel is described as being the package containing the development libraries and headers for x11-driver-video-fglrx package.  Even with both installed, I was still getting the error.. 

I added in the following line from the pclos spec, and modified it to include the ati library (nvidia was already there); this seemed to have fixed that issue:


Code: [Select]
%define _requires_exceptions libGLcore\\.so\\|devel\(libGLcore\)\\|devel\(libnvidia-tls\)\\|libnvidia-tls\\.so\\|devel\(libatiuki\)\\|libatiuki\\.so
« Last Edit: November 29, 2010, 08:44:11 PM by travisn000 »

Offline travisN000

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1758
Re: problem with rpmrebuild (dlerror,dlopen) (solved)
« Reply #4 on: November 29, 2010, 11:18:50 PM »
@ Martin--

Good news...  

I recompiled libCEGUI and updated libSDL_image, then rebuilt my old SMC git build against them and SMC NOW WORKS!!!  ;D

Here is what I have:

SRPMS:
http://dl.dropbox.com/u/2425248/CEGUI-0.7.1-3travisn0002010.src.rpm
http://dl.dropbox.com/u/2425248/SDL_image-1.2.10-1travisn0002010.src.rpm
http://dl.dropbox.com/u/2425248/smc-0.20100821-1travisn0002010.src.rpm


...I also tried pulling an updated git clone, but It is giving me errors when I try and compile it  ::)
« Last Edit: November 29, 2010, 11:38:28 PM by travisn000 »