引數過長,導致編譯自定義函式庫報錯

2021-08-26 10:45:49 字數 760 閱讀 5523

編譯自定義函式庫報錯

ar: not found

make: the error code from the last command is 1.

環境:aix 5.2

xlcoracle10g

tuxedo8.1

檢查發現是編譯時

執行 make

在鏈結物件的時候命令列引數過長

ar -x64 rcu libdb_ia.a  db_commempweb.o db_lifeuserattr.o  db_infonetcardsale.o db_loginfonetcardsale.o … #long args

檢視系統引數上限

$ getconf arg_max

24576

also see 

但是我們的makefile檔案 不帶空格都已經23539 個字元了,導致系統無法成功呼叫 ar命令

$ wc -c makefile

23539 makefile

修改makfe的思路,不再把所有 .o 檔案寫在 乙個命令中,修改為, 逐行寫入乙個.o 檔名 至 obj_list檔案,然後讀取此檔案,逐個打包

同時,makefile 檔案 改為

$(lib_file) :

cat obj_list|while read line; do ar  -x64 rcu $(lib_file) $$line; done

編譯完後檢查有沒有正確的打包檔案

ar -vt $(lib_file)

自定義引數 Python自定義函式引數

1.種類 1 位置引數 x就是位置引數 usr bin env python coding utf 8 def power x result x x print result 2 預設引數n就是預設引數 usr bin env python coding utf 8 def power x,n 1 ...

post 傳參 引數過長導致後台接收為null

問題 post 傳參 引數過長導致後台接收為null 原因 這是由於 tomcat 設定導致。根據官方文件 在 tomcat 中有這樣的設定 server.xml檔案 connectiontimeout 20000 redirectport 8443 maxpostsize 1 tomcat7.0....

如何自定義可變引數函式

在我們編寫 中,有時需要我們自定義可變引數函式,像庫函式中有pirntf,ioctl都是可變引數函式,如果我們要實現自定義可變引數,一般要實現像int ioctl int fd,unsigned long request,這種功能的。下面講解如何實現ioctl這個型別函式 1.通過分析printf函...