qmake詭異的路徑問題

2021-09-30 10:45:07 字數 931 閱讀 6413

今天從同學那兒複製來乙個自己編譯的qt 4.8.5 sdk,想把它加入自己的qt creator裡時出現了這樣的錯誤:「qt沒有被正確安裝,請執行make install」,如下圖:

在命令行時使用qmake -v檢視qmake的資訊,發現qmake使用的庫路徑是同學機子上用的路徑:

d:\qt4.8.5src\bin>qmake -v

qmake version 2.01a

using qt version 4.8.5 in k:\qtinstall\lib

一開始我無法理解這個情況,因為按理來說乙個比較「優美」的軟體應該使用相對路徑才對,這個顯然是絕對路徑。不過我想,總應該有個配置檔案來儲存這個絕對路徑吧,可我又錯了。 在網上查詢資料發現,qt庫檔案的路徑居然是被編譯進qmake.exe這個可執行檔案裡的!!我自己驗證了一下,確實如此。「k:\qtinstall」這個路徑確實出現在qmake.exe檔案內容裡。

這下就無奈了,重新編譯唄。其實應該只編譯qmake就行,不過不記得應該怎樣做了。正要編譯時,又看到乙個帖子,講了這樣乙個方法:

在bin目錄(與qmake同一目錄)裡新建乙個檔案qt.conf,檔案內容如下:

[paths]

prefix=d:/qt4.8.5src

然!後!竟!然!就!能!用!了!!!

好吧,qt的編譯系統真是蛋疼。我的理解是,qmake先在同資料夾裡查詢qt.conf檔案,如果有的話就按qt.conf裡的路徑設定來,如果沒有就按程式裡寫死的路徑來。換句話說,qt.conf可以把qmake裡硬編碼的路徑給override掉。

還有官方文件裡也有講。看來不是qt蛋疼,還是自己了解得太少了啊

wcf的詭異問題

最近在做工作流設計器用的silverlight 使用wcf服務.過程中遇到了兩個奇怪的問題.1.出現整型引數無法傳遞到伺服器的情況 2.出現反序列化失敗的情況.經過仔細排查發現 每個屬性都有乙個 specified bool型別的屬性.記得這個是在使用web應用而不是服務引用的時候才出現的.後指定了...

Docker 詭異問題

在三颱虛擬化出來的伺服器離線部署docker服務 因為該伺服器初次部署docker服務,docker compose up d之後,導致伺服器的ssh掉線了,後面不管怎麼測試都無法通過外部網路登入。但是內部的伺服器網路可以正常訪問。因為啟動容器的時候,建立了容器使用的網路,初步懷疑是docker建立...

編譯OpenCV遇到Qmake問題

1 ubuntu安裝opencv,出現 qmake could not exec usr lib x86 64 linux gnu qt4 bin qmake no such file or directory 必須安裝qt sudo apt get install qt sdk 2 又出現 下列軟...