Nevermind! I found my issue. It was just a simple problem of circular dependencies. Using -Wl,--start-group <libraries...> -Wl,--end-group fixed it.
If only I remembered that catch before! sigh Sorry for the noise! On Friday, August 28, 2015 at 10:04:33 AM UTC-4, Robert Goulet wrote: > > Before I go, a few questions about symbols visibility... > > Does the compiler flags -fvisibility=hidden -fvisibility-inlines-hidden > have any effect? > Does the __attribute__(visibility(...)) have any effect? > > I am wondering because at link time I get a list of undefined symbols, and > I verified with llvm-nm that the symbols are present in the library, such > as : > > T _ZN5physx26PxSceneLimitsGeneratedInfoC1Ev > > Yet Emscripted complains it can't find it : > > warning: unresolved symbol: _ZN5physx26PxSceneLimitsGeneratedInfoC1Ev > > I also verified I properly link with the library : > > DEBUG root: linking: ['CMakeFiles/main_webgl.dir/main.cpp.o', > '../lib/libapplication.a', '../lib/libengine.a', '../lib/libfoundation.a', > '../lib/li > bgame.a', '../lib/libphysx_cct.a', '../lib/libgl_render_device.a', > 'D:/dev/project/lib/physx-3.3.3-webgl-r1/Lib/libPhysX3CHECKED.a', > 'D:/dev/project > /lib/physx-3.3.3-webgl-r1/Lib/libPhysX3CommonCHECKED.a', > 'D:/dev/project/lib/physx-3.3.3-webgl-r1/Lib/libPhysX3ExtensionsCHECKED.a', > 'D:/dev/project > /lib/physx-3.3.3-webgl-r1/Lib/libPhysX3VehicleCHECKED.a', > 'D:/dev/project/lib/physx-3.3.3-webgl-r1/Lib/libPhysXVisualDebuggerSDKCHECKED.a', > > 'D:/dev/s > tingray/lib/physx-3.3.3-webgl-r1/Lib/libPxTaskCHECKED.a', > 'D:/dev/project/lib/physx-3.3.3-webgl-r1/Lib/libLowLevelCHECKED.a', > 'D:/dev/project/lib/ph > ysx-3.3.3-webgl-r1/Lib/libLowLevelClothCHECKED.a', > 'D:/dev/project/lib/physx-3.3.3-webgl-r1/Lib/libSceneQueryCHECKED.a', > 'D:/dev/project/lib/physx-3 > .3.3-webgl-r1/Lib/libSimulationControllerCHECKED.a', > 'D:/dev/project/lib/physx-3.3.3-webgl-r1/Lib/libPvdRuntimeCHECKED.a', > 'D:/dev/project/lib/physx > -3.3.3-webgl-r1/Lib/libPhysXProfileSDKCHECKED.a', '../lib/liblua.a', > 'D:/dev/project/lib/emscripten-1.34.6-r0/.emscripten_cache\\libcxxabi.bc', > 'D:/d > ev/project/lib/emscripten-1.34.6-r0/.emscripten_cache\\gl.bc', > 'D:/dev/project/lib/emscripten-1.34.6-r0/.emscripten_cache\\libc-mt.bc', > 'D:/dev/stin > gray/lib/emscripten-1.34.6-r0/.emscripten_cache\\pthreads.bc', > 'D:/dev/project/lib/emscripten-1.34.6-r0/.emscripten_cache\\dlmalloc_threadsafe.bc', > > ' > > D:/dev/project/lib/emscripten-1.34.6-r0/.emscripten_cache\\libcxx_noexcept.a'] > ... > DEBUG root: considering archive > D:\dev\project\lib\physx-3.3.3\Lib\libPhysX3CHECKED.a > DEBUG root: done running loop of archive > D:\dev\project\lib\physx-3.3.3\Lib\libPhysX3CHECKED.a > ... > > I don't see any specific information at link time with EMCC_DEBUG=1 > regarding this symbol. Doesn't look like it's getting discarded (or if it > is, there's no message about it). > > What could be wrong? We are using the CMake toolchain file provided with > Emscripten to build everything. > Why is Emscripten not able to find these symbols, even thought we clearly > see them in the library? > > Thank you! > -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
