Linux 下不同目錄下檔案生成動態庫 so

2021-07-09 05:50:49 字數 1069 閱讀 3169

1、所有檔案在乙個檔案目錄下時

標頭檔案 a.h   b.h  c.h

原始檔a.cpp b.cpp c.cpp

命令:g++ -fpic -c a.cpp  b.cpp c.cpp 

生成各自的

.o檔案

g++  -shared  -fpic  a.o  b.o  c.o  -o libtest.so 

2、檔案不在乙個檔案目錄下時

在最後用-i把檔案目錄包含

g++ -fpic -c  dcetradechannel.cpp dcetradelog.cpp helper.cpp tradechannelfactory.cpp  -i../include

g++ -shared -fpic dcetradechannel.o  dcetradelog.o helper.o  tradechannelfactory.o -o libdcetradechannel.so

這是運用makrfile檔案的例子

program_name=tagmat

program_home=..

lpath=$/$/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 $/$

golang同級目錄下不同檔案呼叫函式

正常我們執行go檔案時,會使用以下語句 go run main.go但是,如果main.go檔案裡面呼叫了,同級目錄下 同乙個package不同檔案 test.go檔案的函式,則需要通過以下語句呼叫 第一種 go run run之後的點,代表當前目錄 第二種 go run main.go test....

linux根目錄下檔案體系

bin 存放最常用命令 boot 啟動linux的核心檔案 dev 裝置檔案 etc 存放各種配置檔案 home 使用者主目錄 mnt 一般是空的,用來臨時掛載別的檔案系統 proc 虛擬目錄,是記憶體的對映 在此我還有一些疑問,就是關於bin目錄和usr目錄下的bin目錄,已知根目錄下bin目錄一...

linux檢測目錄下檔案變化

前排致謝 先上 再逐步分析。include include include include static void pirthread void id char eventptr int step 0 struct inotify event event fd inotify init1 in no...