我對C編程有所瞭解(今年夏天瞭解到),並且在K-State的一個線性編程課程中。我的術語項目是建立一個線性規劃求解器(內點法,我正在做原始 - 雙重路徑跟隨算法)。我已經正確編碼了所有內容,但無法獲得有效的矩陣逆向計算。我的教授建議我使用已建立的C矩陣計算庫。這導致我下載了「Meschach12b」。如何使用Windows將Meschach庫鏈接到C程序
我擡起頭,學會了如何鏈接一個目錄以及如何鏈接一個庫。我使用的是CodeBlocks和Windows 10,僅供參考。我將CodeBlocks指向帶有頭文件的目錄,然後去鏈接庫,但看到我下載的文件夾中沒有「.lib」,「.so」或「.a」文件。我不知道我是否以某種方式錯過了它,或者如果沒有這些文件就可以完成。我正在網上24/7全天候在線搜索,以便將其實施到我的算法中,因爲沒有它,我的術語項目就沒用了!這是由於本週所以任何幫助將不勝感激!
更多信息:
- 當我#包含頭文件,我嘗試使用,它「作品」時,我建,直到我後來調用該函數。然後出現一個錯誤,說有大量的「未定義的引用」(如50+),但我只調用一個函數。我相信這是由於我的圖書館沒有正確鏈接。
- 我通過這個網站搜索,發現有一個人詢問有關Meschach,他聲稱他的圖書館「安裝正確」,並顯示他輸入「whereis libmeschach」或類似的東西的屏幕截圖。我不知道該怎麼做,但這讓我認爲這就是我錯過的!
- 我會發布任何我需要的東西,但我非常渴望指出正確的方向。我已經爲這個項目投入了大約50個小時,我不希望這些都是徒勞。 :-(
如果我使用不同的編譯器,我可以將我的代碼複製到並運行它很好嗎?我只是碰巧聽到有關CodeBlocks的好消息,所以我開始了。我看到了一個「make file」和README文件,表示把這個和適當的header.h放在Meschach目錄下,我使用了「GCC」文件夾 - 這對於Windows 10來說是正確的我有一個Sony VAIO Ultrabook – user297883
@ user297883:通常你可以很容易地切換編譯器,但是每個編譯器都有自己的怪癖,所以在切換編譯時你可能會遇到一些編譯錯誤,我建議使用makefile和來自M的header.h文件icroSoft文件夾(看你如何運行Windows平臺)。現在,棘手的部分 - mesch12b提供的makefiles用於GNU Make實用程序;你可能沒有安裝Cygwin,msys或gnuwin32或類似軟件。 CodeBlocks可能有能力導入一個make文件並從中建立一個項目。 – thurizas
@ user297883:再想一想,最好的辦法可能是在VM中安裝一個Linux版本,您將可以訪問所有常規開發工具(gcc/make/g ++等)。如果你的項目代碼不依賴於Windows的東西(特別是GUI的東西),你應該能夠將代碼轉移到Linux VM上,並且能夠在不費力的情況下重新編譯。好消息是CodeBlocks可以在Linux和Windows上運行。另外,您下載的CodeBlocks版本可能包含gcc,而gcc是Linux上的標準編譯器。 – thurizas