我在爲我的TI Sitara AM335x EVM SK交叉編譯PostgreSQL時遇到問題。我的主機系統是運行Ubuntu 12.04的i386機器。爲ARM Sitara交叉編譯postgresql AM335x
我的應用程序是用C++編寫的,使用Qt。當我嘗試編譯時,出現libpq.so不兼容的錯誤。我相信這是因爲交叉編譯器試圖使用主機libpq.so而不是目標系統(這是我發現的,不存在的)。
我已經下載了PostgreSQL的源代碼,目的是交叉編譯,以便爲我提供與我的目標系統兼容的libpq.so庫,但實際上沒有關於如何執行此操作的信息。 CC=/home/tim/ti-sdk-am335x-evm-06.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc
但配置腳本給了我這個錯誤:configure: error: cannot run C compiled programs. If you meant to cross compile, use --host.
的配置文件,使一個小參考--host
我已經使用與配置文件中的參數CC改變我的編譯器下面的嘗試選項,但是我能找到的文件中唯一的信息是關於mingw和windows,這不是我想要的。
我已經做了一些快速搜索配置文件,它引用了--host選項,但沒有解釋什麼是有效的主機。我假設用--host選項會有一個關聯的--target。
我可以給configure腳本設置什麼參數,以便它能夠用正確的編譯器進行交叉編譯以生成目標設備可以使用的庫?我還沒有找到關於--host/- 目標如何工作或如何使用它們的資源?
看看[Buildroot](http://buildroot.uclibc.org/)。它提供了Qt 4.x/5.x和PostgreSQL包。 – yegorich 2015-02-12 09:33:46