我打算在FPC中編寫一個庫,該庫可以鏈接到其他編譯器。動態鏈接(.so,.dll)是沒有問題的,但是,從(至少)gcc和/或clang靜態鏈接的需求已經出現。在Freepascal中創建一個靜態鏈接庫
不知何故,最後,我需要一個包含所有FPC內部函數的對象存檔,是否正確?鏈接到libc(cmem,cthreads等)而不是FPC實現看起來是一種要求,但還有什麼是實現這一目標的最有效和跨平臺的方式?
使用的FPC是2.7(幹線)。
在此先感謝。
編輯:一些已經取得進展here(德語,也看到我的評論有鏈接的回購),但它給我的印象不太優雅,也不簡單。還有問題Marco提出的初始化/定稿...
約FPC_INITIALIZEUNITS好一點。我已經更新了BenBE和我在此期間取得的進展,但我認爲我們完全忽略了這一點。關於代碼只是爲了完整構建而生成的,我們可以通過構建一個庫,然後使用主要對象從中提取一些部分來解決這個問題。但這不可能是最好的解決方案。 – Martok