Baru di C ++; Pemahaman dasar termasuk, pustaka dan proses kompilasi. Melakukan beberapa makefile sederhana.
Proyek saya saat ini melibatkan penggunaan api DB informix dan saya perlu menyertakan file header di lebih dari satu direktori tidak standar. Bagaimana cara menulisnya? Havent menemukan sesuatu di internet, mungkin karena saya tidak menggunakan istilah pencarian yang bagus
Ini adalah salah satu cara yang saya coba (tidak berhasil). Hanya untuk menunjukkan makefile
LIB=-L/usr/informix/lib/c++
INC=-I/usr/informix/incl/c++ /opt/informix/incl/public
default: main
main: test.cpp
gcc -Wall $(LIB) $(INC) -c test.cpp
#gcc -Wall $(LIB) $(INC) -I/opt/informix/incl/public -c test.cpp
clean:
rm -r test.o make.out
Anda perlu menggunakan
-I
dengan setiap direktori. Tetapi Anda masih dapat membatasi direktori dengan spasi jika Anda menggunakan (GNU) make'sforeach
:sumber
$(foreach,,)
INC_PARAMS=$(INC:%=-I%)
dengan pergantian pemain .$(foreach,,)
lebih mudah dibaca, tetapi substitusi sangat umum digunakan sehingga sebaiknya Anda memahami cara kerjanya.INC_PARAMS = $(addprefix -I,$(INC))
.$(foreach,,)
juga.