编译 ioftpd v7.7.3
生活随笔
收集整理的這篇文章主要介紹了
编译 ioftpd v7.7.3
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天編譯了下 ioftpd?ioFTPD-v7.7.3-src,遇到幾個問題。
//z 2014-05-05 22:04:40 L.240' 6920 BG57IV3@BYH T3695602389.K.F519279140 [T2,L60,R1,V5]
1. 需要 openssl
下載并且編譯 openssl-1.0.1g
2. 遇到一處包含頭文件 <ms/applink.c>
改為 <openssl/applink.c>
3. 無法找到 tcl.h
詳細見代碼下 Tcl.txt;作者做了說明。
Error1fatal error C1083: Cannot open include file: 'tcl.h': No such file or directory
3.1 似乎還需要 tcl 。
下載了?tcl8.6.1-src
3.2 然后無法找到 tcl85tg.lib
使用 tcl86t.lib
3.3?Error2error LNK2019: unresolved external symbol _Tcl_RegisterHandleLockFunctions referenced in function _Tcl_ModuleInitTcl.objioFTPD-v7
直接注釋了,不知道有無什么影響。
3.3.1 看了眼文件夾,發現有tcl.txt,里面有詳細的說明。有文檔務必認真閱讀文檔呀。。。
//z 2014-05-06 00:40:59 L.239'83941 BG57IV3@BYH T190870396 .K.F519279140 [T5,L65,R1,V9]
3.3.2 仍有以下問題
Bad return type: void Tcl_RegisterHandleLockFunctions(void (*AcquireLock)(void),
?void (*ReleaseLock)(void))
3.3.2.1 作者所用的tcl85t.dll確有?Tcl_RegisterHandleLockFunctions?
08-27-2010, 02:07 PM
//z 2014-05-05 22:35:30 L.240' 5070 BG57IV3@BYH T278698003 .K.F519279140 [T3,L61,R1,V6]
Hmm, it just occurred to me that starting with v7.1.0 the TCL libraries differ from the official TCL v8.5.8 sources because of the addition of the Tcl_RegisterHandleLockFunctions command. That was added so the TCL library can share the ioFTPD lock around process/socket creation. I've included a copy of the TCL sources I'm building from in the link at the top.
49) Tcl_RegisterHandleLockFunctions(AcquireHandleLock, ReleaseHandleLock) hasbeen added as a new exported C function to the standard TCL dlls. Thisis the first time the TCL code has been modified for use by ioFTPD.Previously only the makefiles and command line options used for compilationwere touched. In order to fix the race condition with new sockets beingautomatically inheritable by child processes it is necessary to share alock with the rest of the server and thus some way to communicate what toshare is required. This function just registers 2 callback functions tocall before and after socket and/or process creation. v7.1.0 Release Notes: 找了幾個版本的tcl dll,里面均沒有該函數:Tcl_RegisterHandleLockFunctions1) Files in \System: Changed : ioFTPD.[exe,pdb] - Version 7.1.0.0. Changed : tcl85t.[dll,pdb] - Version 8.5.2.8 (tcl version 8.5.8) Changed : ioFTPD.ini - summary of changes by section...
//z 2014-05-06 09:43:03 L.239'51417 BG57IV3@XCL T4210892314.K.F3811017215[T2,L59,R1,V16]
3.5 找不到 ioFTPD.ico ,將其路徑更改如下。
IDI_ICON1 ? ? ? ? ? ? ? ICON ? ? ? ? ? ? ? ? ? ?".\\..\\src\\ioFTPD.ico"
4. sum
//z 2014-05-06 01:09:04 L.239'82256 BG57IV3@BYH T335328246 .K.F519279140 [T6,L113,R1,V11]
focus:注釋掉?Tcl_RegisterHandleLockFunctions ,然后挑選感興趣的看看。
//z 2014-05-05 22:04:40 L.240' 6920 BG57IV3@BYH T3695602389.K.F519279140 [T2,L60,R1,V5]
1. 需要 openssl
下載并且編譯 openssl-1.0.1g
2. 遇到一處包含頭文件 <ms/applink.c>
改為 <openssl/applink.c>
3. 無法找到 tcl.h
詳細見代碼下 Tcl.txt;作者做了說明。
Error1fatal error C1083: Cannot open include file: 'tcl.h': No such file or directory
3.1 似乎還需要 tcl 。
下載了?tcl8.6.1-src
3.2 然后無法找到 tcl85tg.lib
使用 tcl86t.lib
3.3?Error2error LNK2019: unresolved external symbol _Tcl_RegisterHandleLockFunctions referenced in function _Tcl_ModuleInitTcl.objioFTPD-v7
直接注釋了,不知道有無什么影響。
3.3.1 看了眼文件夾,發現有tcl.txt,里面有詳細的說明。有文檔務必認真閱讀文檔呀。。。
//z 2014-05-06 00:40:59 L.239'83941 BG57IV3@BYH T190870396 .K.F519279140 [T5,L65,R1,V9]
3.3.2 仍有以下問題
Bad return type: void Tcl_RegisterHandleLockFunctions(void (*AcquireLock)(void),
?void (*ReleaseLock)(void))
3.3.2.1 作者所用的tcl85t.dll確有?Tcl_RegisterHandleLockFunctions?
08-27-2010, 02:07 PM
//z 2014-05-05 22:35:30 L.240' 5070 BG57IV3@BYH T278698003 .K.F519279140 [T3,L61,R1,V6]
Hmm, it just occurred to me that starting with v7.1.0 the TCL libraries differ from the official TCL v8.5.8 sources because of the addition of the Tcl_RegisterHandleLockFunctions command. That was added so the TCL library can share the ioFTPD lock around process/socket creation. I've included a copy of the TCL sources I'm building from in the link at the top.
49) Tcl_RegisterHandleLockFunctions(AcquireHandleLock, ReleaseHandleLock) hasbeen added as a new exported C function to the standard TCL dlls. Thisis the first time the TCL code has been modified for use by ioFTPD.Previously only the makefiles and command line options used for compilationwere touched. In order to fix the race condition with new sockets beingautomatically inheritable by child processes it is necessary to share alock with the rest of the server and thus some way to communicate what toshare is required. This function just registers 2 callback functions tocall before and after socket and/or process creation. v7.1.0 Release Notes: 找了幾個版本的tcl dll,里面均沒有該函數:Tcl_RegisterHandleLockFunctions1) Files in \System: Changed : ioFTPD.[exe,pdb] - Version 7.1.0.0. Changed : tcl85t.[dll,pdb] - Version 8.5.2.8 (tcl version 8.5.8) Changed : ioFTPD.ini - summary of changes by section...
The OpenSSL library is unchanged, you should be able to use anybody's compiled copy or build it yourself. We are currently using 1.0.0 but 1.0.1 is out there.
3.4 找到一處作者的說明,使用?nmake -nologo -f makefile.vc release OPTS=threads 編譯 tcl ,使用這個重新編譯下看看。
nmake -nologo -f makefile.vc release OPTS=threads
//z 2014-05-06 09:43:03 L.239'51417 BG57IV3@XCL T4210892314.K.F3811017215[T2,L59,R1,V16]
3.5 找不到 ioFTPD.ico ,將其路徑更改如下。
IDI_ICON1 ? ? ? ? ? ? ? ICON ? ? ? ? ? ? ? ? ? ?".\\..\\src\\ioFTPD.ico"
4. sum
//z 2014-05-06 01:09:04 L.239'82256 BG57IV3@BYH T335328246 .K.F519279140 [T6,L113,R1,V11]
focus:注釋掉?Tcl_RegisterHandleLockFunctions ,然后挑選感興趣的看看。
轉載于:https://www.cnblogs.com/IS2120/p/6745663.html
總結
以上是生活随笔為你收集整理的编译 ioftpd v7.7.3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 摄像头光圈大小对景深的影响
- 下一篇: [Java] HashMap遍历的两种方