Hi Patrik,

[EMAIL PROTECTED] wrote:
> Hi Gerrit,
> 
> doesn't help - there is still a "\" missing when linking the libs...

link /nologo /OUT:.sconf_temp_win32_cl.8.0\conftest_0.exe 
/LIBPATH:C:\Projekte\C++\boost_1_37_0\lib64
                                          ^^^
            you are referring to this here, right?

boost_filesystem-vc80-mt-1_37.lib .sconf_temp_win32_cl.8.0\conftest_0.obj

That is ok, there is no "\" missing, /LIBPATH: takes only a path to a 
directory. It instructs the linker to also look in that directory for 
libs subsequently passed on the command line.

The error you are getting:

conftest_0.obj : error LNK2019: Verweis auf nicht aufgelöstes externes 
Symbol ""__declspec(dllimport) class boost::system::error_category const 
& __cdecl boost::system::get_system_category(void)"

is that there are symbols being used in conftest_0.obj that are not 
provided by any of the libraries linked against. This happens because 
for some reason the autolinking does not work, i.e. the linker does not 
pick up boost_system on its own (normally it does, because the boost 
headers contain some #pragma magic).
Ok, two things: if you are using Gerrit's suggestion, please change the 
order of libs to "system", "filesystem", so that it looks for system 
first and then add in Tools/scons-build/OpenSG/AddOnHacks.py there is:

# Thread library needs some additional libraries on Linux... (yuck)
     if "thread" == libname:
         conf_env.Append(LIBS = [lib_filename,] + self.thread_extra_libs)

         conf_ctxt = Configure(conf_env)
         result = conf_ctxt.CheckLibWithHeader(lib_filename, 
header_to_check, "c++")
         conf_ctxt.Finish()
         return result

please add two lines, so that it looks like:


# Thread library needs some additional libraries on Linux... (yuck)
     if "thread" == libname:
         conf_env.Append(LIBS = [lib_filename,] + self.thread_extra_libs)

         known_libs = [self.found_libs[lib] for lib in self.found_libs]
         conf_env.Append(LIBS = known_libs)

         conf_ctxt = Configure(conf_env)
         result = conf_ctxt.CheckLibWithHeader(lib_filename, 
header_to_check, "c++")
         conf_ctxt.Finish()
         return result

This should hopefully finally force the boost_system lib to show up on 
the link line.

        Hope it helps,
                Carsten


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to