Jump to content

error: ‘vswprintf_s’ was not declared in this scope


Recommended Posts

Whoops, "osx" vs "macosx" was my mistake - fixed now (I hope).

/usr/bin/ld: can't locate file for: -lAtlasUI_dbg
Sounds like AtlasUI failed to compile, so there must have been another error somewhere. Do you still get the problem if you do "make clean" and then a normal "make" again? If so, what's the output when you run "make AtlasUI" (which hopefully will mention the error)?
Link to comment
Share on other sites

Well, Philip, I can't see any other errors in this compilation (the complete gcc output is available here : http://pastebin.com/m465e7f34).

If I launch make AtlasUI (without make clean), I get :


==== Building AtlasObject ====
make[1]: `../../../binaries/system/libAtlasObject_dbg.a' is up to date.
==== Building AtlasScript ====
make[1]: `../../../binaries/system/libAtlasScript_dbg.a' is up to date.
==== Building wxJS ====
make[1]: `../../../binaries/system/libwxJS_dbg.a' is up to date.
==== Building AtlasUI ====
make[1]: `../../../binaries/system/libAtlasUI_dbg.so' is up to date.

All I can see in my compilation that could tell us something are warnings like that :


ld: warning -L: directory name (../../../libraries/dl/lib) does not exist
...
ld: warning -L: directory name (../../../libraries/comsuppw/lib) does not exist
ld: warning -L: directory name (../../../libraries/x11/lib) does not exist

How are those directories created (cause they're not present in sources) ?

edit : creating these directories from scratch suppresses the warnings, but I get the same error at last.


==== Building ActorEditor ====
==== Building ColourTester ====
ActorEditor.cpp
ColourTester.cpp
Linking ColourTester
Linking ActorEditor
/usr/bin/ld: can't locate file for: -lAtlasUI_dbg
/collect2: usr/bin/ld: can'tld returned 1 exit status
locate file for: -lAtlasUI_dbg
collect2: ld returned 1 exit status
make[1]: *** [../../../binaries/system/ActorEditor_dbg.app/Contents/MacOS/ActorEditor_dbg] Error 1
make[1]: *** [../../../binaries/system/ColourTester_dbg.app/Contents/MacOS/ColourTester_dbg] Error 1
make: *** [ActorEditor] Error 2
make: *** Waiting for unfinished jobs....
make: *** [ColourTester] Error 2

Edited by arn34
Link to comment
Share on other sites

The directories are referenced from build/premake/extern_libs.lua but aren't present in libraries/. Comsuppw (Windows-specific) is a .lib file shipped with the compiler; X11 ought to be present on most *nix but I don't know where/whether we need a directory or just a single file. I don't know about DL, either. Seems quite doubtful that these warnings point to a problem that prevents the library from being loaded, though.

Link to comment
Share on other sites

Hmm... Does the file binaries/system/libAtlasUI_dbg.so exist? (or anything with a similar name?)

Could you run "./update-workspaces.sh --verbose" and then "make clean" and "make ActorEditor" (without any -j option)? That should make it easier to see exactly what it's doing.

Link to comment
Share on other sites

Did you see the whole output, Jan ? What could point to these errors otherwise ? I can't see anything else for my part ...

I didn't see any relevant info, either :/ (We do need to clean up those warnings, though)

Just one thing looked strange:

/usr/bin/ld: can't/usr/ locate file for: -lAtlasUI_dbgbin/ld: can't

locate file for: -lAtlasUI_dbg

Is it trying two linkers (and failing to print a newline after the first error)? That's interesting..

Link to comment
Share on other sites

Here is the output of a make (without -j3), after an ./update-workspace.sh --verbose, on the latest svn revision (7104) :


g++ -MD -I "../../../source/tools/atlas/AtlasFrontends/.." -g -Wall -Wno-switch -Wno-reorder -Wno-invalid-offsetof -Wextra -Wno-missing-field-initializers -Wunused-parameter -Wredundant-decls -D_FORTIFY_SOURCE=2 -fstrict-aliasing -fpch-preprocess -msse -ffast-math -fvisibility=hidden -MF obj/ActorEditor_Debug/ActorEditor.d -o obj/ActorEditor_Debug/ActorEditor.o -c ../../../source/tools/atlas/AtlasFrontends/ActorEditor.cpp
mkdir -p ../../../binaries/system
mkdir -p ../../../binaries/system
mkdir -p ../../../binaries/system
if [ ! -d ../../../binaries/system/ActorEditor_dbg.app/Contents/MacOS ]; then mkdir -p ../../../binaries/system/ActorEditor_dbg.app/Contents/MacOS; fi
g++ -o ../../../binaries/system/ActorEditor_dbg -L../../../binaries/system -L../../../binaries/system -L"/opt/local/lib" obj/ActorEditor_Debug/ActorEditor.o ../../../binaries/system/libAtlasObject_dbg.a ../../../binaries/system/libAtlasUI_dbg.so -lAtlasUI_dbg
/usr/bin/ld: can't locate file for: -lAtlasUI_dbg
collect2: ld returned 1 exit status
make[1]: *** [../../../binaries/system/ActorEditor_dbg.app/Contents/MacOS/ActorEditor_dbg] Error 1
make: *** [ActorEditor] Error 2

The whole outputs are available here :

- ./update-workspace.sh -- verbose : http://pastebin.com/m160b3e8f

- make : http://pastebin.com/m4fb1cbd4

I thought the parallel builds could lead to the error message, but now that I tried a simple make, I don't understand why it fails ...

Edited by arn34
Link to comment
Share on other sites

g++ -o ../../../binaries/system/libAtlasUI_dbg.so
...
g++ -o ../../../binaries/system/ActorEditor_dbg -L../../../binaries/system -L../../../binaries/system -L"/opt/local/lib" obj/ActorEditor_Debug/ActorEditor.o ../../../binaries/system/libAtlasObject_dbg.a ../../../binaries/system/libAtlasUI_dbg.so -lAtlasUI_dbg
/usr/bin/ld: can't locate file for: -lAtlasUI_dbg

After doing this, does the file binaries/system/libAtlasUI_dbg.so exist? It sounds like it's being compiled properly, and the problem is when trying to link against it, but I have no idea why ;)

Does anyone else on OS X have this same problem?

What is the output from the commands

pkg-config libxml-2.0 --libs
pkg-config nspr --libs
wx-config --unicode=yes --libs std,gl

?

The only significant difference I see from Linux is that I get

g++ -o ../../../binaries/system/ActorEditor_dbg -L../../../binaries/system -L../../../binaries/system -Wl,--no-undefined -Wl,--as-needed -L"/usr/X11R6/lib" obj/ActorEditor_Debug/ActorEditor.o   -Xlinker --start-group ../../../binaries/system/libAtlasObject_dbg.a ../../../binaries/system/libAtlasUI_dbg.so -Xlinker --end-group -lAtlasUI_dbg

(i.e. with --start-group) but I don't see why that would matter here.

Link to comment
Share on other sites

After doing this, does the file binaries/system/libAtlasUI_dbg.so exist? I

I forgot to mention it (you already asked for that file in last post), but yes it exists :


ordinateur-de-arnaud:~/Desktop/0adtest/binaries/system arnaud$ ls
ActorEditor.exe libatlas_dbg.a
ActorEditor_dbg.app libengine_dbg.a
ActorViewer.bat libgraphics_dbg.a
Atlas.bat libgui_dbg.a
AtlasUI.dll libi18n_dbg.a
AtlasUI.dll.2.config liblowlevel_dbg.a
Collada.dll libmocks_real_dbg.a
ColourTester.exe libmocks_test_dbg.a
FCollada.dll libnetwork_dbg.a
FColladaD.dll libnspr4.dll
FontBuilder.exe libpng13.dll
Microsoft.VC80.CRT.manifest libpng13d.dll
Microsoft.VC80.DebugCRT.manifest libwxJS_dbg.a
Microsoft.VC90.CRT.manifest libxml2.dll
Microsoft.VC90.OpenMP.manifest msvcm80.dll
OpenAL32.dll msvcp71.dll
Quickstart.bat msvcp80.dll
RebuildRandomMaps.bat msvcp80d.dll
SDL.dll msvcp90.dll
aken.pdb msvcr71.dll
aken.sys msvcr71d.dll
aken64.pdb msvcr80.dll
aken64.sys msvcr80d.dll
aken64d.pdb msvcr90.dll
aken64d.sys msvcrt.dll
akend.pdb msvcrtd.dll
akend.sys ogg.dll
ape ogg_d.dll
avcodec-51.dll perl58.dll
avformat-51.dll pyrogenesis.exe
avutil-49.dll pyrogenesis.pdb
cryptopp.dll pyrogenesis_dbg
cryptoppd.dll pyrogenesis_dbg.app
dbghelp.dll readme.txt
freetypea.dll rmgen.exe
freetypeb.dll rmgen.pdb
icons.dll swscale-0.dll
iconv.dll textureconv
jpeg-6b.dll vcomp90.dll
jpeg-6bd.dll vorbis.dll
js32.dll vorbis_d.dll
js32d.dll vorbisfile.dll
js32d.pdb vorbisfile_d.dll
libAtlasObject_dbg.a wrap_oal.dll
libAtlasScript_dbg.a zlib1.dll
libAtlasUI_dbg.so zlib1d.dll

(see just above)

What is the output from the commands

Here they are :


ordinateur-de-arnaud:~/Desktop/0adtest/binaries/system arnaud$ pkg-config libxml-2.0 --libs
-L/opt/local/lib -lxml2 -lpthread -lz -liconv -lm

ordinateur-de-arnaud:~/Desktop/0adtest/binaries/system arnaud$ pkg-config nspr --libs
-L/opt/local/lib/nspr -L/opt/local/lib -lplds4 -lplc4 -lnspr4

ordinateur-de-arnaud:~/Desktop/0adtest/binaries/system arnaud$ wx-config --unicode=yes --libs std,gl
-L/opt/local/lib -L/opt/local/lib -L/opt/local/lib -framework IOKit -framework Carbon -framework Cocoa -framework System -framework QuickTime -framework OpenGL -framework AGL -lwx_macu_gl-2.8 -lwx_macu-2.8

Any idea ?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...