View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0002463 | Spring engine | General | public | 2011-06-09 23:16 | 2015-09-10 19:11 |
| Reporter | abma | Assigned To | |||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Summary | 0002463: when doing out-of-source build of spring, compile fails with "undefined reference to `_filesystem'" | ||||
| Description | when doing an additional cmake [...] . everything works as excepted Linking CXX shared module ../../unitsync.dll CMakeFiles/unitsync.dir/__/__/rts/System/Platform/Misc.cpp.obj:/root/test/spring/rts/System/Platform/Misc.cpp:130: undefined reference to `_filesystem' CMakeFiles/unitsync.dir/__/__/rts/System/Platform/Misc.cpp.obj:/root/test/spring/rts/System/Platform/Misc.cpp:130: undefined reference to `FileSystem::GetDirectory(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' CMakeFiles/unitsync.dir/__/__/rts/System/Platform/Misc.cpp.obj:/root/test/spring/rts/System/Platform/Misc.cpp:225: undefined reference to `_filesystem' CMakeFiles/unitsync.dir/__/__/rts/System/Platform/Misc.cpp.obj:/root/test/spring/rts/System/Platform/Misc.cpp:225: undefined reference to `FileSystem::GetDirectory(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' CMakeFiles/unitsync.dir/__/__/rts/System/LogOutput.cpp.obj:/root/test/spring/rts/System/LogOutput.cpp:162: undefined reference to `FileSystemHandler::GetCwd()' CMakeFiles/unitsync.dir/__/__/rts/System/LogOutput.cpp.obj: In function `operator+<char, std::char_traits<char>, std::allocator<char> >': /usr/lib/gcc/i586-mingw32msvc/4.4.4/include/c++/bits/basic_string.h:2219: undefined reference to `FileSystemHandler::native_path_separator' | ||||
| Additional Information | http://pastebin.com/nJPm9JqV looks like MakeGlobal(sources_engine_System_FileSystem) doesn't work the first time | ||||
| Tags | No tags attached. | ||||
| Checked infolog.txt for Errors | |||||
|
|
A possible solution might be, defining the source-file lists in macros/functions, and calling them wherever they are needed. This way we would prevent order-of-init problems like this one, and would not have to use global/cache vars either, as the vars can be defined in the local scope (therefore, we probably have to use macros, not functions, as the later introduce a child-scope). |
|
|
MakeGlobal macro was changed, now it doesn't use cache. also i didn't see this bug for a long time -> i assume its fixed |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2011-06-09 23:16 | abma | New Issue | |
| 2011-06-09 23:24 | hoijui | Note Added: 0006716 | |
| 2011-06-09 23:39 | abma | Status | new => confirmed |
| 2011-06-09 23:39 | abma | Category | Buildbot => General |
| 2011-06-09 23:40 | abma | Summary | when doing outsource build of spring, compile fails with "undefined reference to `_filesystem'" => when doing out-of-source build of spring, compile fails with "undefined reference to `_filesystem'" |
| 2015-09-10 19:11 | abma | Note Added: 0015145 | |
| 2015-09-10 19:11 | abma | Status | confirmed => closed |
| 2015-09-10 19:11 | abma | Resolution | open => fixed |