原文:如何讓靜態庫中的可執行程序不調用的函數不鏈接進該可執行程序?(-ffunction-sections -Wl,--gc-sections)

關鍵詞: Wl, gc sections ffunction sections 鏈接 elf 庫 有時我們會遇到這種情況,可執行程序需要鏈接一些靜態庫,但是靜態庫中的函數並沒有全部使用,只用了其中的幾個,但是系統默認會自動把整個靜態庫全部鏈接到可執行程序中,造成可執行程序的大小大大增加,浪費了flash空間和內存空間。gcc為我們提供的解決這個問題的方法。 請看下面的例子: fun .c fun ...

2013-12-12 19:12 0 3048 推薦指數:

查看詳情

Python調用c++可執行程序

1、c++編譯程序 g++ -o main_run main.cpp 2、python3調用c++可執行文件 命令結果: ...

Tue May 28 02:18:00 CST 2019 0 1236
Linux調用可執行程序

目錄 一、exec函數族 二、system函數 三、版權聲明 在C/C++程序,經常需要調用其它的程序來先成某項任務,例如其它的C/C++程序、操作系統命令或Shell腳本,C/C++提供了exec函數族和system函數來實現這個功能。 一、exec ...

Sun Mar 15 22:57:00 CST 2020 0 2080
jar包生成exe可執行程序

1.生成工具EXE4J下載鏈接:https://www.ej-technologies.com/download/exe4j/files 2.安裝、使用:https://blog.csdn.net/hlf1203/article/details/50071201 安裝時要求指向一個對應 ...

Thu Sep 13 22:51:00 CST 2018 0 1194
可執行程序的生成過程

  我們通常編寫的文本程序是由ASCII字符組成,但是一個可執行程序是由二進制數字組成,從ASCII——>二進制文件,經歷了 預處理:進行頭文件和宏定義的替換 編譯:由編譯器把高級語言代碼編譯為匯編代碼 匯編:由匯編器把匯編代碼翻譯成二進制代碼,也即是.o文件 連接 ...

Sun Jun 24 00:05:00 CST 2018 0 2547
NDK 編譯可執行程序

以Hello Android工程為例。 建立好工程hello-a,在jni目錄下創建文件hello-a.c,文件內容如下。(注意是jni目錄,使用src目錄編譯會出錯) #inclu ...

Wed Nov 05 21:56:00 CST 2014 0 2124
編譯lua可執行程序

目錄 前言 編譯 總結 前言 lua是一個非常好用的動態語音,最適合嵌入其他程序中使用。 我已經見過很多軟件使用lua腳本讓用戶自定義想要的功能,而那些軟件為lua提供接口即可,完成高度可定制的需求。 例如大名鼎鼎的Redis就使用lua作為嵌入 ...

Tue Jan 19 05:42:00 CST 2021 0 476
python生成exe可執行程序

當我們編寫完python源程序文件時,一般都需要有python解釋器才能運行,不像c語言那樣可以直接編譯成exe文件后直接運行,其實python也能生成exe可執行文件,下面就教給大家如何操作。 首先我們需要用到一個打包工具——pyinstaller,該工具並不是自帶的,需要我們下載安裝,一般 ...

Sun Jul 05 17:19:00 CST 2020 0 8426
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM