binary-compatibility

    4熱度

    1回答

    我負責維持原有VB6的代碼,也碰到了一個惱人的問題是關於項目的COM DLL的鎖定。 (我們叫它MyProject的和MyProject.dll) 當我加載MyProject的到VB6 IDE,我可以編譯生成的二進制兼容DLL MyProject.dll。然後,我可以運行我的(經典ASP)Web應用程序,該應用程序可以掛接到DLL(或其他任何相關事項)。 所以,當我試圖重新編譯COM DLL,我得

    2熱度

    2回答

    的如果有兩個源文件AC和BC: AC包括巧舌如簧-2.6.6 和 BC的glib.h包括油嘴2.12 glib.h然後我編譯它們並將它們鏈接在一起並生成目標程序。假設a.c沒有使用v2.6以後版本中引入的任何新功能,將會包含不同版本的標頭會導致任何問題?如果是這樣,那麼這種問題何時會發生?

    2熱度

    4回答

    我想知道哪個Linux發行版最好(即引入最少的依賴關係),當鏈接一個應該儘可能多的發行版對共享庫的工作的二進制文件。 我已經在Ubuntu上完成了它,但依賴列表是可怕的。 SDL引入了PulseAudio等等。我的下一個猜測是使用Debian lenny--在你看來,最好的發行版本是什麼?

    5熱度

    1回答

    初始注意:該問題提到AIX是因爲它是初始上下文,但問題確實與gcc本身有關,很可能與平臺無關。 AIX應該是向後二進制兼容的:在AIX 5.1上編譯的C程序將在5.2,5.3,6.1和7.1上運行。 根據我的理解,應該構建gcc來針對特定系統(無論是在交叉編譯的情況下是當前還是另一個)。因此,構建在AIX 6.1上的gcc以AIX 6.1爲目標,並且由於二進制兼容性,可以在6.1和7.1上生成可用

    9熱度

    4回答

    我有一個私有數據成員數量的類(其中一些是靜態的),可以通過虛擬和非虛擬成員函數訪問。沒有內聯函數,也沒有朋友類。 class A { int number; string str; static const int static_const_number; bool b; public: A(); virtual ~A(); pub

    2熱度

    1回答

    我已經繼承了一個應用程序,該應用程序鏈接到可能已經使用gcc3構建的庫。或者用imagecraft編譯器。這些信息現在已經消失在天堂般的位域中,我剩下一個libXXX.a庫來鏈接我的應用程序。我無法重新編譯libXXX.a,因爲它需要來自imagecraft和某處的某些未知標題,這些標題可能在我的環境中無處不在,但現在無處可尋。 我的問題是這樣的,只要我用avr-gcc版本3.4.0編譯我的應用程

    6熱度

    2回答

    Xcode(gcc 4.0,4.2和llvm)是否支持三種主要的編譯器版本二進制兼容?使用最新的Xcode工具加快多庫項目的速度時,我應該注意哪些陷阱和拐角案例?

    2熱度

    1回答

    我有一個.NET庫在COM中可見,它從vb6應用程序調用。 如果我添加了一些方法,併發佈一個新版本(但不要刪除或更改現有方法的簽名),我希望能夠只安裝在生產機器,並有工作。但是,似乎這種方法行不通;我需要重新編譯vb6應用程序。 有什麼辦法可以達到這個目的嗎?

    2熱度

    2回答

    我有一個用gcc 4.4.0編譯的二進制文件,我試圖在沒有gcc 4.4.0的舊系統上運行它。它不起作用。錯誤不是它找不到符號,而是它不能正確運行並掛起。系統之間的差異是CentOS 5.5 vs 5.2,gcc 4.4.0 vs 3.4.6。 如何在不安裝gcc 4.4.0的情況下在系統上運行該軟件?我們可以放置運行時庫嗎?簡單地複製依賴項並設置庫路徑不會顯示出來。 該二進制文件需要gcc 4.

    1熱度

    1回答

    就像標題所說,如果我更改vb.net程序集的目標cpu,它會破壞二進制兼容性嗎?