簡體   English   中英

在G ++編譯中找不到SDL.h

[英]SDL.h not found on g++ compile

使用OSX和vim ...從網站下載了SDL2,然后將SDL2.framework移至/ Library / Frameworks /

使用教程代碼和Makefile ...找不到SDL.h。

生成文件: g++ sdl-config --cflags --libs sdltest.cpp -o sdltest

我已經閱讀了很多有關將編譯器指向框架的內容,但是我嘗試過的所有內容似乎都無法正常工作,而且我認為/ Library / Frameworks /是編譯器要查看的默認區域

得到它的工作。

要使它正常工作需要進行多次嘗試,但是每次嘗試的問題根源在於,當我使用SDL2時,我正在查看的大多數教程都是針對SDL1.2的。

這更改了make文件中的標志,要搜索的目錄等。 有趣的是,當它位於/ Library / Frameworks /目錄中時,我永遠無法讓編譯器看到SDL.h。 但是,使用Macports安裝SDL2可以使編譯器指向Macports安裝SDL2頭文件的位置-/ opt / local / include / SDL2

看來對我來說已經做到了

謝謝您的提問,因為我遇到了類似的困難! 似乎缺少有關如何使用Macports安裝SDL2的詳細且有用的教程。

我知道了! 步驟如下:

  1. 訪問此鏈接以找到適合您的Mac OS X版本的Macports軟件包。安裝所需的版本,完成后,請繼續執行步驟2。

    https://www.macports.org/install.php

  2. 安裝完成后,請訪問此鏈接以找到SDL2端口。

    https://www.macports.org/ports.php?by=name&substr=libsdl

    我需要的是頂部的第三個,叫做libsdl2 我將為您提供名稱,以便您隨意訪問該鏈接。

  3. 打開終端,然后輸入sudo port install libsdl2 如果一切按計划進行,您應該會看到它正在安裝和更新。 完成后,應該對SDL2 Header文件(以.h ),靜態庫文件(以.a結尾)和動態庫文件(包含dylib )進行功能性安裝。 您可能需要在Finder中進行一些查找才能找到它的安裝位置。

  4. 這種解決方法的優點是可以將SDL與Xcode(例如Eclipse)之外的其他IDE一起使用。 盡管Xcode要求您分配/Library/Frameworks的路徑,但該技術應允許您使用所選的IDE。

  5. 最后一步是進入IDE,並為這些新安裝和編譯的SDL文件分配構建路徑。 例如,我的路徑是/opt/local/include/opt/local/lib 請注意,您的道路可能與這些道路有所不同,但是這些示例應使您對外觀有所了解。

希望這對某人有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM