rm -rf file //強制刪除所有檔案
rm -r file //對於大資料夾會出現?的提問
set wrap //換行
.xz 檔案解壓xz -d +檔案
查詢檔案
find / -name +檔名
linux下include包含絕對路徑,並且包含庫檔案很嚴格,例如在windows下包含即可使用printf,但是linux下必須包含
拷貝:cp: omitting directory 說明檔案裡有許多檔案,
採用:cp -r //命令來進行遞迴拷貝
動態連線庫
生成:g++ -shared -fpic -o lib[檔名].so [源**].cpp ++
連線:g++ main.cpp -l. -l[庫檔名不含lib和.so] -o main
-l.--表示在當前檔案查詢
或者將:-o main.cpp放在最後
g++ -o main -l/liu/project/lib/ -ltiger main.cpp
說明:g++編譯器,-o:表示輸出可執行檔案,-l:表示去哪個目錄下尋找,-l:表示要尋找的庫檔名稱
使用庫函式
將.so 檔案cp到/usr/lib下(不建議使用),或者建立乙個自己lib
使用全域性變數export ld_library_path=[lib的絕對目錄]
export ld_library_path=./ 或 export ld_library_path=/絕對路徑/
//好像過一段時間就要執行一次
./main就可執行。
三個檔案:main.cpp tiger.h add.cpp sub.c 如下
1.add.cpp
1 int add(int a,int b)
2 2.sub.c
1 int sub(int a,int b)
2 3.tiger.h
1 #ifndef _tiger_
2 #define _tiger_
3 4 int add(int a, int b);
5 int sub(int a ,int b);
6 7 #endif
4.main.cpp
1 #include
2 #include "tiger.h"
3 4 using namespace std;
5 int main()
6 /$/local/lib
localpath=$
include_tag=-i$/src -i$(lpath)/../include
cxx=g++
cflags=-o3
src=$(wildcard *.cpp)
obj=$(patsubst %.cpp,%.o,$(src))
## make rules starts here, you should need to edit anything below this line
#all : $
@(if [ ! -d $ ]; then mkdir $; fi)
@(mv $ $/$)
$ : $ $
$(cxx) $(cflags) -c $ $
$ : $
$(cxx) $(cflags) -o $ $ -l$/ -lmatio -lz
clean:
rm -rf *.o $/$
錯誤1.makefile:2: *** unterminated variable reference. stop.
make檔案的語法錯誤,缺少(,
2.make: *** no rule to make target `libtiger.so', needed by `main.o'. stop.
語法錯誤
//ubuntu 編譯時候,出現/tmp/..main.o錯誤,重新編譯gcc_5.2.0後問題竟然消失了,奇怪
//寫好makefile檔案編譯時候,出現不相容,檢視.so 檔案是64位,ubuntu是32位,換centos6.5環境
抓包命令:
tcpdump -i -n 網絡卡 host ip and \(ip or ip ...\)
表示抓從本地主機到伺服器端口的包。
c編譯生成so 庫
首先 gcc c fpic libst.c 生成 libst.o 然後gcc shared fpic o libst.so libst.o 生成 libst.so 動態鏈結庫 注意 fpic選項。pic指position independent code。共享庫要求有此選項,以便實現動態連線 dyn...
AS編譯c c 生成so檔案
本文講如何用androidstudio生成so檔案 1.新建乙個android專案 2.新建乙個類,並新增native方法 3.生成class檔案4.開啟as的命令終端,輸入命令生成.h檔案 do not edit this file it is machine generated include ...
Linux編譯 so模板
目標檔名 target libmymath.so 生成的目標所放置的位置 target path 編譯引數 cc g 依賴庫名稱,如 libs lpthread libs 指定依賴庫位置,多個引用庫之間以空格分開,如 ldflags l usr lib l lib ldflags 向 提供巨集定義,...