I could either get it to link, but fail the premain test or not get it
to link.  I never did get even a simple application to compile and run.

I haven't had time since my last post to work on it.  I've been side
tracked by our (way behind) software release.  

-Jon Evers

________________________________

From: owner-openssl-us...@openssl.org
[mailto:owner-openssl-us...@openssl.org] On Behalf Of Raghav Varadan
Sent: Wednesday, April 03, 2013 5:59 PM
To: openssl-users@openssl.org
Subject: Re: fipslink

 

Jon,

I have the same problem that you were mentioning in your thread. I built
a batch file similar to yours and I'm getting the link error in the
first pass. Were you able to find a solution for this?


------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------

Following are the link errors I'm getting:

fips_premain.obj : error LNK2001: unresolved external symbol "unsigned
char * FIPS_signature" (?FIPS_signature@@3PAEA)
fips_premain.obj : error LNK2019: unresolved external symbol "unsigned
int __cdecl FIPS_incore_fingerprint(unsigned char *,unsigned int)"
(?FIPS_incor
e_fingerprint@@YAIPEAEI@Z) referenced in function "void __cdecl
FINGERPRINT_premain(void)" (?FINGERPRINT_premain@@YAXXZ)
fips_premain.obj : error LNK2019: unresolved external symbol "void const
* __cdecl FIPS_text_start(void)" (?FIPS_text_start@@YAPEBXXZ) referenced
in f
unction "void __cdecl FINGERPRINT_premain(void)"
(?FINGERPRINT_premain@@YAXXZ)


------------------------------------------------------------------------
-------------------------------------------------------------------

Here is my log:


D:\TestPrograms\TestFIPSOpenssl>cl /Od /I
"D:\OpenSSL\deploy\Applications_win64_x64\include" /I
"D:\Dev\WrkSpace_Main\depot\ExternalLibs\OpenSSL\1.0.1c-fips2.0.3\fips-s
rc\include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_UNICODE" /D
"UNICODE" /Gm /EHsc /RTC1 /MDd /Fo"x64\Debug\\" /Fd"x64\Debug\vc90.pdb"
/W3 /nologo /c /Zi /TC /errorReport:prompt main.c
main.c

D:\TestPrograms\TestFIPSOpenssl>fips_build_script.bat

D:\TestPrograms\TestFIPSOpenssl>SET
FIPS_PATH=D:\OpenSSL\deploy\Applications_win64_x64

D:\TestPrograms\TestFIPSOpenssl>SET FIPS_LINK=link

D:\TestPrograms\TestFIPSOpenssl>SET FIPS_CC=cl

D:\TestPrograms\TestFIPSOpenssl>SET FIPS_CC_ARGS=/Fo
D:\TestPrograms\TestFIPSOpenssl\x64\Debug\fips_premain.obj
-ID:\Dev\WrkSpace_Ma
in\depot\ExternalLibs\OpenSSL\1.0.1c-fips2.0.3\_deploy\Applications_win6
4_x64\include /MD /O1 -DOPENSSL_THREADS  -DDSO_WIN32 -DOPENSSL_NO_ERR
-W3 -Gs0
 -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN
-DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE
-ID:\Dev\WrkSpace_Main\depot\Ext
ernalLibs\OpenSSL\1.0.1c-fips2.0.3\_deploy\Applications_win64_x64/includ
e/GS -DOPENSSL_NO_IDEA -DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_SEED
-DOPENSSL_NO_RC
2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_MD2 -DOPENSSL_NO_RIPEMD
-DOPENSSL_NO_MDC2 -DOPENSSL_NO_BF -DOPENSSL_NO_CAST -DOPENSSL_NO_DH
-DOPENSSL_NO_WHIRLPOOL -DO
PENSSL_NO_SSL2 -DOPENSSL_NO_CMS -DOPENSSL_NO_ERR -DOPENSSL_NO_KRB5
-DOPENSSL_NO_GOST -DOPENSSL_NO_HW -DOPENSSL_FIPS -DOPENSSL_NO_JPAKE
-DOPENSSL_NO_DY
NAMIC_ENGINE     /Zl /Z7  -c

D:\TestPrograms\TestFIPSOpenssl>SET PREMAIN_DSO_EXE=

D:\TestPrograms\TestFIPSOpenssl>SET
FIPS_TARGET=D:\TestPrograms\TestFIPSOpenssl\x64\Debug\TestFIPSOpenssl.ex
e

D:\TestPrograms\TestFIPSOpenssl>SET
FIPS_SHA1_EXE=D:\OpenSSL\deploy\Applications_win64_x64\bin\fips_standalo
ne_sha1.exe

D:\TestPrograms\TestFIPSOpenssl>SET
FIPSLIB_D=D:\OpenSSL\deploy\Applications_win64_x64\lib

D:\TestPrograms\TestFIPSOpenssl>perl
D:\OpenSSL\deploy\Applications_win64_x64\bin\fips
link.pl
/OUT:"D:\TestPrograms\TestFIPSOpenssl\x64\Debug\TestFIPSOpenssl.exe"
/NOLOGO /LIBPATH:"D:\Dev\WrkSpace_Main\depot\ExternalLibs\OpenSS
L\1.0.1c-fips2.0.3\_deploy\Applications_win64_x64\lib" /MANIFEST
/MANIFESTFILE:\"x64\Debug\TestFIPSOpenssl.exe.intermediate.manifest\"
/MANIFESTUAC:\"
level='asInvoker' uiAccess='false'\" /DEBUG
/PDB:\"D:\TestPrograms\TestFIPSOpenssl\x64\Debug\TestFIPSOpenssl.pdb\"
/SUBSYSTEM:CONSOLE /DYNAMI
CBASE /NXCOMPAT /MACHINE:X64 /ERRORREPORT:PROMPT fipscanister.lib
opensslcryptofips.lib opensslssl.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 x64\Debug\main.obj x64\Debug\fips_premain.obj

Integrity check OK

cl /Fo D:\TestPrograms\TestFIPSOpenssl\x64\Debug\fips_premain.obj
-ID:\OpenSSL\deploy\
Applications_win64_x64\include /MD /O1 -DOPENSSL_THREADS  -DDSO_WIN32
-DOPENSSL_NO_ERR -W3 -Gs0 -Gy -nologo -DOPENSSL_SYSNAME_WIN32
-DWIN32_LEAN_AND_M
EAN -DL_ENDIAN -DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE
-ID:\OpenSSL\deploy\Applications
_win64_x64/include/GS -DOPENSSL_NO_IDEA -DOPENSSL_NO_CAMELLIA
-DOPENSSL_NO_SEED -DOPENSSL_NO_RC2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_MD2
-DOPENSSL_NO_RIPEMD
 -DOPENSSL_NO_MDC2 -DOPENSSL_NO_BF -DOPENSSL_NO_CAST -DOPENSSL_NO_DH
-DOPENSSL_NO_WHIRLPOOL -DOPENSSL_NO_SSL2 -DOPENSSL_NO_CMS
-DOPENSSL_NO_ERR -DOPEN
SSL_NO_KRB5 -DOPENSSL_NO_GOST -DOPENSSL_NO_HW -DOPENSSL_FIPS
-DOPENSSL_NO_JPAKE -DOPENSSL_NO_DYNAMIC_ENGINE     /Zl /Z7  -c
D:\Dev\WrkSpace_Main\depot
\ExternalLibs\OpenSSL\1.0.1c-fips2.0.3\_deploy\Applications_win64_x64\li
b/fips_premain.c
cl : Command line warning D9027 : source file
'D:\TestPrograms\TestFIPSOpenssl\x64\Debug\fips_premain.obj' ignored
fips_premain.c
link /OUT:D:\TestPrograms\TestFIPSOpenssl\x64\Debug\TestFIPSOpenssl.exe
/NOLOGO /LIBPATH:D:\Dev\WrkSpace_Main\depot\ExternalLibs\OpenSSL\1.0.
1c-fips2.0.3\_deploy\Applications_win64_x64\lib /MANIFEST
/MANIFESTFILE:"x64\Debug\TestFIPSOpenssl.exe.intermediate.manifest"
/MANIFESTUAC:"level='asI
nvoker' uiAccess='false'" /DEBUG
/PDB:"D:\TestPrograms\TestFIPSOpenssl\x64\Debug\TestFIPSOpenssl.pdb"
/SUBSYSTEM:CONSOLE /DYNAMICBASE /NXCOMP
AT /MACHINE:X64 /ERRORREPORT:PROMPT fipscanister.lib
opensslcryptofips.lib opensslssl.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 x64\Debug\main.obj x64\Debug\fips_premain.obj
MSVCRTD.lib(cinitexe.obj) : warning LNK4098: defaultlib 'msvcrt.lib'
conflicts with use of other libs; use /NODEFAULTLIB:library

fips_premain.obj : error LNK2001: unresolved external symbol "unsigned
char * FIPS_signature" (?FIPS_signature@@3PAEA)
fips_premain.obj : error LNK2019: unresolved external symbol "unsigned
int __cdecl FIPS_incore_fingerprint(unsigned char *,unsigned int)"
(?FIPS_incor
e_fingerprint@@YAIPEAEI@Z) referenced in function "void __cdecl
FINGERPRINT_premain(void)" (?FINGERPRINT_premain@@YAXXZ)
fips_premain.obj : error LNK2019: unresolved external symbol "void const
* __cdecl FIPS_text_start(void)" (?FIPS_text_start@@YAPEBXXZ) referenced
in f
unction "void __cdecl FINGERPRINT_premain(void)"
(?FINGERPRINT_premain@@YAXXZ)
D:\TestPrograms\TestFIPSOpenssl\x64\Debug\TestFIPSOpenssl.exe : fatal
error LNK1120: 3 unresolved externals
First stage Link failure at
D:\OpenSSL\deploy\Applications_win64_x64\bin\fipslink.pl line 55.

 

Thanks!

Regards,

Raghav

 

 

On Thu, Feb 7, 2013 at 2:26 PM, Dave Thompson <dthomp...@prinpay.com>
wrote:

> From: owner-openssl-us...@openssl.org On Behalf Of Jeffrey Walton
> Sent: Wednesday, 06 February, 2013 16:59

> To: openssl-users@openssl.org
> Subject: Re: fipslink
>

> On Wed, Feb 6, 2013 at 2:40 PM, Memmott, Lester
> <lester.memm...@landesk.com> wrote:
> > Jon,
> >
> > I'm having trouble with fipslink as well and thought it
> might help to compare notes.  These are the linker errors I'm
> getting using Visual Studio 2008:
> > fips_premain.obj : error LNK2001: unresolved external
> symbol "unsigned char * FIPS_signature" (?FIPS_signature@@3PAEA)
> > fips_premain.obj : error LNK2001: unresolved external
> symbol "void const * __cdecl FIPS_text_start(void)"
> (?FIPS_text_start@@YAPBXXZ)
> > fips_premain.obj : error LNK2001: unresolved external
> symbol "unsigned int __cdecl FIPS_incore_fingerprint(unsigned
> char *,unsigned int)" (?FIPS_incore_fingerprint@@YAIPAEI@Z)
> >
> > What linker errors do you get?
> It looks like you are not compiling fips_premain.c (that's where those
> symbols are allocated storage).
>

I don't think so. In my copy they are *referenced* in fips_premain.c,
and allocated/defined in fips.c and fips_canister.c .

Those error messages look like fips_premain.c was compiled as C++
instead of C. Since by design C++ is a superset of "good" C this
doesn't cause errors. If OP is compiling in VisualStudio/VisualC++
(not just linking) in my experience VisualStudio defaults to
"force C++" and you have to manually reconfigure to allow C.



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

 


Live customer support is available 24/7/365 from the U.S. for all customers 
worldwide and locally in other countries. Find out more at www.go2vanguard.com.

Enable Yourself Learn more about Vanguard zSecurity University training classes 
offered online, on-demand by request, or in a traditional classroom setting in 
cities worldwide. www.go2vanguard.com

This e-mail and any attachments are intended solely for the use of the 
addressee and may contain information that is PRIVILEGED and CONFIDENTIAL. If 
you are not the intended recipient of this e-mail, you are hereby notified that 
any dissemination of this e-mail or any attachments is strictly prohibited. If 
you have received this e-mail in error, please do not read this email, please 
delete all copies of this e-mail and any attachments and notify the sender 
immediately. Thank you.

Reply via email to