User forums > Using Code::Blocks

does c::b include .so paths in linux but not .dll paths in windows?

<< < (2/2)

alle_meije:
No need to get excited. As I thought I had already mentioned, when I run the program from C::B in Linux (using the green triangle) it works.
When I do the same in Windows I get a missing DLL message (see PNG) -- nifti.dll is produced by project B.

The same happens when I call the .exe from the command line in cmd.exe and when I click the .exe in Windows Explorer (so option 4).
What I was wondering was mainly if there's a solution for (1) -- is it possible to make a workspace so that DLLs from separate projects are also found in Windows?

oBFusCATed:
I'm not excited, but if I have to ask the same question twice then it lowers my desire to continue trying to help.

Please post a full rebuild log?
What are you using for linking? By this I mean what kind of file (the log might answer this).
What happens if you place the missing dll next to the exe file?

alle_meije:
Copying the .dll(s) does work but it's annoying that for developing it is necessary in Windows (while it isn't in Linux). I prefer to keep the projects in different directories.

In http://forums.codeblocks.org/index.php?topic=15998.0 it was explained that this is a platform issue and other than copying .dll files the best solution was static linking.

Fortunately though that's not necessary! This post http://forums.codeblocks.org/index.php?topic=8061.0 shows that the option [project]->[build options]->[linker]->[search directories] basically supplies a library path during 'Run'. It was a bit harder to find because of the alternative terminology, but this is very handy. Although it's not necessary to do this in Linux, having it in the workspace file anyway shouldn't hurt (will test soon)!

Navigation

[0] Message Index

[*] Previous page

Go to full version