Linux平台下使用 Eclipse 軟件創建項目工程,創建並配置編譯配置項,例如 “Debug”,完成編譯配置后,項目工程中會生成相應的編譯配置目錄 “Debug”,該目錄中自動生成 makefile 文件,不使用eclipse軟件,直接使用 “make all” 命令直接編譯該配置項,生成可執行文件;
主要解決需求:
將Eclipse 工程拷貝給他人使用,不需要對方安裝 Eclipse 軟件,即可直接對工程目錄進行編譯;
使用eclipse軟件工程直接生成的 makefile 進行編譯,出現錯誤提示:
“/bin/sh: 1: arm-oe-linux-gnueabihf-gcc: not found”
問題解決方法:
系統環境變量中增加該交叉編譯工具鏈安裝目錄的索引;
/etc/profile 目錄中 PATH 增加交叉編譯工具鏈安裝路徑索引,再使用命令 source /etc/profile 即可解決該問題,親測有效;
問題原因分析:
eclipse工程屬性中,C/C++ Build -> Settings -> Cross Settings 中有PATH配置,該配置對應的就是交叉編譯工具鏈路徑;
需求2
提供 Eclipse 工程,但不提供源文件(工程中存在已經編譯完成的 .o 文件),主要用於聯合開發的算法庫獨立調試;
實現方法:
正常編譯 Eclipse 工程,編譯通過后將源文件(.c .h)移除,只保留工程配置項文件,如debug編譯配置目錄,打開debug頂層目錄的makefile文件, #Tool invocations 項中,將目標文件的依賴項 ‘$(OBJS)’ 刪除即可;
用戶可通過 make/make all 命令鏈接算法庫並重新生成目標文件(make 前先將已經生成的目標文件移除);