我目前正在尝试为Windows Embedded Compact 7编译OpenSSL 1.0.2d。我使用了这条指令:http://blog.csdn.net/sooner01/article/details/4289147。使用此设置:
set PATH=C:\Programme\Microsoft Visual Studio
9.0\VC\ce\bin\x86_arm;C:\Programme\Microsoft Visual Studio 9.0\VC\bin;C:\Programme\Microsoft Visual Studio 9.0\Common7\Tools;C:\Programme\Microsoft Visual Studio 9.0\Common7\IDE;C:\Programme\Microsoft Visual Studio 9.0;%path%
set INCLUDE=C:\Programme\Microsoft Visual Studio
9.0\VC\ce\include;C:\Programme\Windows CE Tools\SDKs\SDK2wince7\Include\Armv4i;C:\Programme\Windows CE Tools\SDKs\SDK2wince7\Include;C:\Programme\Microsoft Visual Studio
9.0\VC\ce\atlmfc\include;
set LIB=C:\Programme\Windows CE Tools\SDKs\SDK2wince7\Lib\ARMV4I;C:\Programme\Microsoft Visual Studio
9.0\VC\ce\atlmfc\lib\armv4i;C:\Programme\Microsoft Visual Studio 9.0\VC\ce\lib\armv4i;C:\Programme\Microsoft Visual Studio 9.0\VC\lib;
set OSVERSION=WINCE600
set PLATFORM=VC-CE
set TARGETCPU=ARMV4I
set WCECOMPAT=C:\Qt\wcecompat_m
编译工作正常,但链接打印出这些错误(不幸的是用德语)
pem_pkey.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
evp_cnf.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
pmeth_lib.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
t_bitst.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
asn_mime.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
lhash.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
o_names.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
o_names.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
obj_dat.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
dh_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
ec_curve.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
ec_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
b_sock.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
hm_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
cm_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
rsa_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
dsa_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strcmp".
e_des3.obj : error LNK2001: Nicht aufgelöstes externes Symbol "memmove".
bio_b64.obj : error LNK2001: Nicht aufgelöstes externes Symbol "memmove".
bio_ok.obj : error LNK2001: Nicht aufgelöstes externes Symbol "memmove".
cfb64ede.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "memmove" in Funktion "DES_ede3_cfb_encrypt".
cfb_enc.obj : error LNK2001: Nicht aufgelöstes externes Symbol "memmove".
dh_key.obj : error LNK2001: Nicht aufgelöstes externes Symbol "memmove".
bss_mem.obj : error LNK2001: Nicht aufgelöstes externes Symbol "memmove".
p12_key.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_sdiv".
wcecompatex.lib(time.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_sdiv".
i_skey.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___rt_sdiv" in Funktion "inverse".
bn_exp.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_sdiv".
b_dump.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_sdiv".
md_rand.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_sdiv".
v3_scts.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv64by64".
wcecompatex.lib(time.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv64by64".
bn_div.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___rt_udiv64by64" in Funktion "BN_div".
bn_asm.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv64by64".
b_print.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv64by64".
bss_dgram.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv64by64".
lhash.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv".
lh_stats.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv".
cms_pwri.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv".
wcecompatex.lib(time.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv".
bn_exp.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___rt_udiv" in Funktion "BN_mod_exp_mont_word".
bn_prime.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv".
dsa_gen.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv".
ec_mult.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_udiv".
conf_mod.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
ocsp_ht.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
asn_mime.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
asn_moid.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
v3_conf.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_isctype" in Funktion "generic_asn1".
v3_utl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
bn_print.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
b_print.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
obj_dat.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
x_name.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_isctype".
wcecompatex.lib(time.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_urem64by64".
bn_word.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___rt_urem64by64" in Funktion "BN_mod_word".
b_print.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_urem64by64".
bss_dgram.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_urem64by64".
v3_scts.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_urem64by64".
b_sock.obj : error LNK2001: Nicht aufgelöstes externes Symbol "atoi".
ts_conf.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "atoi" in Funktion "TS_CONF_set_policies".
rsa_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "atoi".
dsa_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "atoi".
dh_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "atoi".
ec_pmeth.obj : error LNK2001: Nicht aufgelöstes externes Symbol "atoi".
dso_win32.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "LoadLibraryW" in Funktion "LoadLibraryA".
dso_win32.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SetLastError" in Funktion "LoadLibraryA".
dso_win32.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "FreeLibrary" in Funktion "win32_load".
dso_win32.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "GetProcAddressA" in Funktion "win32_bind_var".
dso_win32.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sprintf" in Funktion "win32_name_converter".
dso_win32.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "strstr" in Funktion "win32_name_converter".
by_dir.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncpy".
v3_alt.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncpy".
v3_info.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncpy".
ts_rsp_verify.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncpy".
dso_win32.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "strncpy" in Funktion "win32_joiner".
err.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncpy".
evp_key.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncpy".
x509_obj.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncpy".
bio_cb.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fputs" in Funktion "BIO_debug_callback".
ui_openssl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fputs".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fclose" in Funktion "file_free".
randfile.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fclose".
ui_openssl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fclose".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "GetLastError" in Funktion "file_read".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "ferror" in Funktion "file_read".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fread" in Funktion "file_read".
randfile.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fread".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fwrite" in Funktion "file_write".
b_dump.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fwrite".
randfile.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fwrite".
a_strex.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fwrite".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_setmode" in Funktion "file_ctrl".
OLDNAMES.lib(setmode.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "_setmode".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_fileno" in Funktion "file_ctrl".
OLDNAMES.lib(fileno.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "_fileno".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fopen" in Funktion "file_ctrl".
randfile.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fopen".
ui_openssl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fopen".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fseek" in Funktion "file_ctrl".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "ftell" in Funktion "file_ctrl".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "feof" in Funktion "file_ctrl".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fflush" in Funktion "file_ctrl".
ui_openssl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fflush".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fgets" in Funktion "file_gets".
bss_file.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_wfopen" in Funktion "BIO_new_file".
b_print.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___ltd" in Funktion "abs_val".
md_rand.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___ltd".
b_print.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___negd" in Funktion "abs_val".
b_print.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___dtoi" in Funktion "roundv".
b_print.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___subd" in Funktion "roundv".
md_rand.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___subd".
b_print.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___ged" in Funktion "roundv".
md_rand.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___ged".
wcecompatex.lib(env.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
eng_cnf.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
ocsp_lib.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
ui_lib.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "strchr" in Funktion "UI_process".
srp_vfy.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
v3_alt.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
v3_info.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
v3_ncons.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
conf_mod.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
b_sock.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
err.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
a_mbstr.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
v3_utl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strchr".
bss_dgram.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "SystemTimeToFileTime" in Funktion "get_current_time".
wcecompatex.lib(time.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "SystemTimeToFileTime".
wcecompatex.lib(timeb.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "SystemTimeToFileTime".
bss_dgram.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "GetSystemTime" in Funktion "get_current_time".
wcecompatex.lib(time.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "GetSystemTime".
stack.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "qsort" in Funktion "sk_sort".
o_names.obj : error LNK2001: Nicht aufgelöstes externes Symbol "qsort".
a_set.obj : error LNK2001: Nicht aufgelöstes externes Symbol "qsort".
tasn_enc.obj : error LNK2001: Nicht aufgelöstes externes Symbol "qsort".
md_rand.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___addd" in Funktion "ssleay_rand_add".
rand_win.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "GetTickCount" in Funktion "readtimer".
wcecompatex.lib(time.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "GetTickCount".
rand_win.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "QueryPerformanceCounter" in Funktion "readtimer".
rand_win.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "GlobalMemoryStatus" in Funktion "RAND_poll".
rand_win.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "CryptReleaseContext" in Funktion "RAND_poll".
rand_win.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "CryptGenRandom" in Funktion "RAND_poll".
rand_win.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "CryptAcquireContextW" in Funktion "RAND_poll".
x_name.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "tolower" in Funktion "asn1_string_canon".
asn_mime.obj : error LNK2001: Nicht aufgelöstes externes Symbol "tolower".
v3_utl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "tolower".
eng_fat.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
v3_crld.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
v3_ncons.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
v3_pci.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
conf_mod.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
pem_lib.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
by_dir.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
v3_conf.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
v3_utl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
n_pkey.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "strncmp" in Funktion "d2i_RSA_NET".
asn_mime.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
asn1_gen.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
a_strnid.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strncmp".
asn1_gen.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "strtoul" in Funktion "parse_tagging".
a_strnid.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strtoul".
ocsp_ht.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strtoul".
asn_moid.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "strrchr" in Funktion "do_create".
conf_mod.obj : error LNK2001: Nicht aufgelöstes externes Symbol "strrchr".
ts_conf.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fprintf".
wcecompatex.lib(stdio_extras.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "fprintf" in Funktion "perror".
pem_lib.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fprintf".
txt_db.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fprintf".
eng_openssl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fprintf".
ui_openssl.obj : error LNK2001: Nicht aufgelöstes externes Symbol "fprintf".
v3_utl.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "sscanf" in Funktion "ipv4_from_asc".
eng_ctrl.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "strtol" in Funktion "ENGINE_ctrl_cmd_string".
pqueue.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "printf" in Funktion "pqueue_print".
LINK : error LNK2001: Nicht aufgelöstes externes Symbol "_DllMainCRTStartup".
wcecompatex.lib(time.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "GetTimeZoneInformation" in Funktion "localtime".
wcecompatex.lib(time.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "FileTimeToSystemTime" in Funktion "localtime".
wcecompatex.lib(time.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "FileTimeToLocalFileTime" in Funktion "localtime".
wcecompatex.lib(time.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "GetLocalTime" in Funktion "mktime".
wcecompatex.lib(timeb.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "GetLocalTime".
wcecompatex.lib(time.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___rt_sdiv64by64" in Funktion "mktime".
wcecompatex.lib(timeb.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___rt_sdiv64by64".
wcecompatex.lib(env.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_strdup" in Funktion ""char * __cdecl ts_strdup(char const *)" (?ts_str
dup@@YAPADPBD@Z)".
OLDNAMES.lib(strdup.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "_strdup".
wcecompatex.lib(env.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_wcsdup" in Funktion ""unsigned short * __cdecl ts_strdup(unsigned shor
t const *)" (?ts_strdup@@YAPAGPBG@Z)".
OLDNAMES.lib(wcsdup.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "_wcsdup".
OLDNAMES.lib(strnicmp.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__strnicmp".
OLDNAMES.lib(stricmp.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__stricmp".
OLDNAMES.lib(setmode.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__setmode".
OLDNAMES.lib(fileno.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__fileno".
OLDNAMES.lib(strdup.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__strdup".
OLDNAMES.lib(wcsdup.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__wcsdup".
out32dll_ARMV4I\libeay32.dll : fatal error LNK1120: 94 nicht aufgelöste externeVerweise.
NMAKE : fatal error U1077: ""C:\Programme\Microsoft Visual Studio 9.0\VC\ce\bin\x86_arm\link.EXE"": Rückgabe-Code "0x460"
Stop.
最后它说,有94个未解析的外部参考文献。
我仔细检查路径,但我不知道导致这些错误的原因。你们中的任何人?先谢谢,托比亚斯