User forums > Using Code::Blocks

Dynamic Library Problem

(1/1)

revanthedarth:
I have a huge project that works under Windows (VS 2008). I'm trying to port it to linux but i've encountered a problem in dynamic libraries.

I have a RendererOpenGL project that creates RendererOpenGL.so. But i cannot open that file using the code below:

--- Code: ---#include <dlfcn.h>
#include <cstdio>
int main()
{
void* libHandle;
libHandle=dlopen("./RendererOpenGL.so", RTLD_LAZY);
if(!libHandle)
{
printf("PROBLEM OPENING SO FILE!\n");
return 0;
}
printf("Bye...\n");
return 0;
}

--- End code ---

I tried adding -shared to compiler flags or linker options, but nothing changed. And dlopen('RendererOpenGL.so", RTLD_LAZY) doesnt work either. I guess there is something wrong in the configuration.

ollydbg:
this question is not related to C::B, so I think you'd find a better forum to ask there.

revanthedarth:
It is. Creating a shared object works fine if i use g++ with -shared flag. But when I create a Dynamic Library with C::B, it doesn't create a valid output.

Jenna:

--- Quote from: revanthedarth on January 28, 2011, 02:25:09 pm ---It is. Creating a shared object works fine if i use g++ with -shared flag. But when I create a Dynamic Library with C::B, it doesn't create a valid output.

--- End quote ---
Believe me it works if the settings are correct.
Try the dynamic library wizard and compare the settings with your project.

stahta01:
Please read the FAQs and the posting rules
http://wiki.codeblocks.org/index.php?title=FAQ#Q:_How_do_I_troubleshoot_an_compiler_problem.3F
http://wiki.codeblocks.org/index.php?title=FAQ
http://forums.codeblocks.org/index.php/topic,8962.0.html
http://forums.codeblocks.org/index.php/topic,9996.0.html

Tim S.

Navigation

[0] Message Index

Go to full version