Hi, (please excuse if this is a duplicate, yesterdays posting seems failed)

I have problems with warnings from the linker on Windows, indicating that initializers will not be called. I've built 1.0.0a with VS2005, using nt.mak to get static libraries.

With x64 I get warnings when linking applications, both openssl.exe and test programs like sha1test.exe. A snippet of output from nmake -f ms\nt.mak: link /nologo /subsystem:console /opt:ref /debug /out:out32\openssl.exe @C:\DOCUME~1\FRYKEN~1\LOCALS~1\Temp\nm3B3.tmp LIBCMT.lib(crt0init.obj) : warning LNK4254: section '.CRT' (60000020) merged into '.rdata' (40000040) with different attributes


And when linking our own application on x64/Release platform:
libeay32.lib(x86_64cpuid.obj) : warning LNK4078: multiple '.CRT' sections found with different attributes (60500020) libeay32.lib(x86_64cpuid.obj) : warning LNK4210: .CRT section exists; there may be unhandled static initializers or terminators


The linker command can be deduced from the following:
Creating temporary file "c:\utv\ccbas4\ccbase\x64\Release\RSP0000132444832.rsp" with contents
  [
/OUT:"../deploy/execs/x64/Release/etnode.exe" /INCREMENTAL:NO /MANIFEST /MANIFESTFILE:"x64/Release\etnode.exe.intermediate.manifest" /DELAYLOAD:"oci.dll" /DEBUG /PDB:"../deploy/execs/x64/Release/etnode.pdb" /SUBSYSTEM:CONSOLE /LTCG psapi.lib odbc32.lib odbccp32.lib WS2_32.LIB ADVAPI32.LIB GDI32.LIB USER32.LIB dbghelp.lib ../snibu/logging-log4cxx/msvc/lib/x64/Release/log4cxxs.lib ../snibu/openssl-1.0.0a/x64/Release/lib/ssleay32.lib ../snibu/openssl-1.0.0a/x64/Release/lib/libeay32.lib ../snibu/oracle/x64/instantclient_10_2/sdk/lib/msvc/oci.lib ../snibu/zlib/msvc/lib/x64/Release/zlibstat.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib DelayImp.lib

  ".\x64\Release\CCcServApp.obj"
  ...
  ".\x64\Release\Bas4Bridge.obj"
  ]
Creating command line "link.exe @c:\utv\ccbas4\ccbase\x64\Release\RSP0000132444832.rsp /NOLOGO /ERRORREPORT:PROMPT"


I've done the following to build openssl:
  cd /d C:\utv\snibu\openssl\x64\release\openssl-1.0.0a
call "C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat" x86_amd64
  perl Configure VC-WIN64A --prefix=c:\appl\openssl-1.0.0a\x64\release
  ms\do_win64a.bat
  nmake -f ms\nt.mak
  nmake -f ms\nt.mak install

And the file x86_64cpuid.asm mentioned in the warnings starts with the following:
  default    rel
  EXTERN    OPENSSL_cpuid_setup
  section    .CRT$XCU
      ALIGN    8
      DQ    OPENSSL_cpuid_setup

  section    .text code align=64
...


Could somebody help me solve this warning, it seems to me that OPENSSL_cpuid_setup will not be executed.


Best regards,
Per Frykenvall


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to