背景:我們使用最初開發於VAX/OpenVMS上的非常舊的Fortran代碼(F77),它允許自定義鏈接 - 即可以在庫中定義多個符號,但被賦予了強制鏈接器使用特定符號的能力。VS2010 /英特爾Fortran未找到多個定義的符號
使用VS2010和英特爾Fortran 2013,我正在尋找一種方式,讓鏈接器強制它使用來自特定庫中的符號(即MYSUBROUTINE),當它存在於多個庫中時。
我有一個混合的C++/Fortran項目。內部開發的庫不是我自己的,因此刪除未使用的子例程不是微不足道的。因此,爲什麼我正在尋找一種方法來強制VS2010/Intel Fortran 2013鏈接程序使用特定的子例程。
我想這個問題對我們來說並不是獨一無二的,因爲許多遺留的代碼庫,尤其是那些有很多Fortran的代碼庫,都必須有這個問題。
我應該問題的根本原因是,即使我排除/ FORCE:MULTIPLE選項,鏈接器**永遠不會找到多重定義的符號,並且它始終創建一個.exe - 但它的隨機作爲到.exe是否會執行或有圖像問題。因此,能夠控制圖像中使用哪個子程序是巨大的。如何讓它找到一個你知道的多邊定義符號的任何建議也會有所幫助。謝謝! –