LINUX學習筆記之64位下編譯apr過程

2021-10-06 09:02:53 字數 1089 閱讀 1688

configure: error: cannot run /bin/sh config/config.sub

#rpm -qa | grep libtool

libtool-ltdl-2.2.6-15.5.el6.x86_64

libtool-ltdl 已安裝了

libtool

libtool-ltdl-devel

這兩個安裝了沒有,

如沒有就可以吧!

yum -y install libtool-ltdl libtool-ltdl-devel

除了缺少libtool之外,還有可能是換行符的問題

# sed -i 『s/\r$//』 configure

#rpm -qa | grep gcc

#sed -i 『s/\r$//』 /home/liaowj/apr-0.9.4/build/get-version.sh

4.2. 編譯時出現stcp_nodelay未定義,自己加了#define stcp_nodelay 1 後編譯通過

telnet不上10.10.0.112

檢視一下/etc/pam.d/下的檔案是否有telnet,沒有的話是被系統視為不安全的服務選項,是不符合pam模組安全認證的。所以telnet無法實現鏈結的功能。ssh就可以,因為ssh服務在/etc/pam.d/下,服務程式是sshd

[root@onion pam.d]# pwd

/etc/pam.d

[root@onion pam.d]# ls -l ssh*

-rw-r–r--. 1 root root 575 jun 22 2012 sshd

-rw-r–r--. 1 root root 341 jun 22 2012 ssh-keycat

經過分析,不是這個原因

終於找到問題,這裡不能用int:

int isendbyte; //在64位下是4位元組,但apr_size_t在64位下是8位元組,導致位址轉換獲取是有問題的,必須改為:

apr_size_t isendbyte;

rv = apr_socket_send(pcd->psocket, szbuf, (apr_size_t *)&isendbyte);

在64位linux下編譯32位程式

一般情況下我們最好是在乙個平台上編譯本平台的二進位制程式,比如在32位平台上編譯32位程式而在64位平台上編譯64位程式。現在64位的系統 這裡主要指x86 64系統,包括amd64和intel的em64t 已經開始廣泛的使用起來了,甚至於你現在要是想買32位的處理器根本就沒有。64位的系統在效能和...

在64位linux下編譯32位程式

留存備份 一般情況下我們最好是在乙個平台上編譯本平台的二進位制程式,比如在32位平台上編譯32位程式而在64位平台上編譯64位程式。現在64位的系統 這裡主要指x86 64系統,包括amd64和intel的em64t 已經開始廣泛的使用起來了,甚至於你現在要是想買32位的處理器根本就沒有。64位的系...

在64位linux下編譯32位程式

一般情況下我們最好是在乙個平台上編譯本平台的二進位制程式,比如在32位平台上編譯32位程式而在64位平台上編譯64位程式。現在64位的系統 這裡主要指x86 64系統,包括amd64和intel的em64t 已經開始廣泛的使用起來了,甚至於你現在要是想買32位的處理器根本就沒有。64位的系統在效能和...