1、tar xvfz jpegsrc.v9a.tar.gz
2、cd jpeg-9a
3、./configure cc=arm-linux-gcc --prefix=/opt/jpeg --exec-prefix=/opt/jpeg/exec --enable-shared --enable-static --host=arm-linux
4、make
5、make install之後會在/opt/jpeg和/opt/jpeg/exec目錄下分別生成include、lib等檔案
6、終於我在編譯camera程式時可以採用這個庫里
arm-linux-gcc camera.c -o camera -lpthread -i/opt/jpeg/include -l/opt/jpeg/exec/lib -ljpeg
這下終於不會因為引用了支援記憶體輸入的jpeg_mem_src而報錯了。
下面是關於configure後面跟的引數的詳細說明
'configure'指令碼有大量的命令列選項.對不同的軟體包來說,這些選項可能會有變化,但是許多基本的選項是不會改變的.帶上'--help'選項執行'configure'指令碼可以看到可用的所有選項.儘管許多選項是很少用到的,但是當你為了特殊的需求而configure乙個包時,知道他們的存在是很有益處的.下面對每乙個選項進行簡略的介紹:
與'--prefix'選項類似,但是他是用來設定結構倚賴的檔案的安裝位置.編譯好的'emacs'二進位制檔案就是這樣乙個問件.如果沒有設定這個選項的話,預設使用的選項值將被設為和'--prefix'選項值一樣.
'--bindir=dir'
指定二進位制檔案的安裝位置.這裡的二進位制檔案定義為可以被使用者直接執行的程式.
'--sbindir=dir'
指定超級二進位制檔案的安裝位置.這是一些通常只能由超級使用者執行的程式.
'--libexecdir=dir'
指定可執行支援檔案的安裝位置.與二進位制檔案相反,這些檔案從來不直接由使用者執行,但是可以被上面提到的二進位制檔案所執行.
'--datadir=dir'
指定通用資料檔案的安裝位置.
'--sysconfdir=dir'
指定在單個機器上使用的唯讀資料的安裝位置.
'--sharedstatedir=dir'
指定可以在多個機器上共享的可寫資料的安裝位置.
'--localstatedir=dir'
指定只能單機使用的可寫資料的安裝位置.
'--libdir=dir'
指定庫檔案的安裝位置.
'--includedir=dir'
指定c標頭檔案的安裝位置.其他語言如c++的標頭檔案也可以使用此選項.
'--oldincludedir=dir'
指定為除gcc外編譯器安裝的c標頭檔案的安裝位置.
'--infodir=dir'
指定info格式文件的安裝位置.info是被gnu工程所使用的文件格式.
'--mandir=dir'
指定手冊頁的安裝位置.
'--srcdir=dir'
這個選項對安裝沒有作用.他會告訴'configure'原始碼的位置.一般來說不用指定此選項,因為'configure'指令碼一般和原始碼檔案在同乙個目錄下.
'--program-prefix=prefix'
指定將被加到所安裝程式的名字上的字首.例如,使用'--program-prefix=g'來configure乙個名為'tar'的程式將會使安裝的程式被命名為'gtar'.當和其他的安裝選項一起使用時,這個選項只有當他被`makefile.in'檔案使用時才會工作.
'--program-suffix=suffix'
指定將被加到所安裝程式的名字上的字尾.
'--program-transform-name=program'
這裡的program是乙個sed指令碼.當乙個程式被安裝時,他的名字將經過`sed -e program'來產生安裝的名字.
'--build=build'
指定軟體包安裝的系統平台.如果沒有指定,預設值將是'--host'選項的值.
'--host=host'
指定軟體執行的系統平台.如果沒有指定,將會執行`config.guess'來檢測.
'--target=garget'
指定軟體面向(target to)的系統平台.這主要在程式語言工具如編譯器和彙編器上下文中起作用.如果沒有指定,預設將使用'--host'選項的值.
'--disable-feature'
一些軟體包可以選擇這個選項來提供為大型選項的編譯時配置,例如使用kerberos認證系統或者乙個實驗性的編譯器最優配置.如果預設是提供這些特性,可以使用'--disable-feature'來禁用它,這裡'feature'是特性的名字.例如:
$ ./configure --disable-gui
'-enable-feature[=arg]'
相反的,一些軟體包可能提供了一些預設被禁止的特性,可以使用'--enable-feature'來起用它.這裡'feature'是特性的名字.乙個特性可能會接受乙個可選的引數.例如:
$ ./configure --enable-buffers=128
`--enable-feature=no'與上面提到的'--disable-feature'是同義的.
$ gtar zxf mmalloc-1.0.tar.gz
$ mkdir build && cd build
$ ../mmalloc-1.0/configure
creating cache ./config.cache
checking for gcc... gcc
checking whether the c compiler (gcc ) works... yes
checking whether the c compiler (gcc ) is a cross-compiler... no
checking whether we are using gnu c... yes
checking whether gcc accepts -g... yes
checking for a bsd compatible install... /usr/bin/install -c
checking host system type... i586-pc-linux-gnu
checking build system type... i586-pc-linux-gnu
checking for ar... ar
checking for ranlib... ranlib
checking how to run the c preprocessor... gcc -e
checking for unistd.h... yes
checking for getpagesize... yes
checking for working mmap... yes
checking for limits.h... yes
checking for stddef.h... yes
updating cache ../config.cache
creating ./config.status
這樣這棵構築樹就被配置了,下面可以繼續構築和安裝這個包到預設的位置'/usr/local':
$ make all && make install
原文
linux下configure配置引數
1 原始碼安裝一般包括幾個步驟 配置 configure 編譯 make 安裝 make install 2 其中configure是乙個可執行指令碼,在原始碼目錄中執行可以完成自動的配置工作,即.configure。3 在實際的安裝過程中,我們可以增加 prefix引數,這樣可以將要安裝的應用安裝...
configure 常用引數
當我們使用原始碼安裝包來安裝軟體時會執行下面的命令 tar zxvf test.tar.gz cd test configure make make install來完成安裝,但是這遠沒有達到我們配置軟體的目的,這時候就需要在configure中加上一些配置,當然更詳細的設定應該在設定檔中來完成。下...
configure交叉編譯
今天在交叉編譯時犯了乙個錯誤,糾結了好久,曾經交叉編譯器的字首基本上都是用arm linux 這次換了乙個新環境是arm none linux gnueabi 於是想當然的把configure中的host引數設定為 host arm linux,於是就犯了一些錯誤。把它改為 host arm non...