私は基本的にCmakeを使用してPhysFSライブラリを構築しようとしましたが、使用したのはCode :: Blocksmingwmakefilesでした。プロジェクトにインポートできますが、技術的にはPhysFS_init()関数を宣言できますが(引数のエラーが少なすぎます)、引数を追加すると、PHYSFS_initが未定義の参照であることがわかります。
それは私にはとてもばかげているように聞こえますが、引数がないときにどうやってそれを認識できますが、引数を追加するときに存在しないふりをしますか?私はCMakeを2回実行しましたが、これを取得しているだけです。
[...]\src\main.cpp|20|undefined reference to `PHYSFS_init'|
必要に応じて、コード(少しだけ、残りは無関係です):
#include <SFML/Window.hpp>
#include <SFML/System.hpp>
#include <iostream>
#include "Globals.h"
#include "GameStates.h"
#include "GameWindow.h"
#include "GameMenu.h"
#include <physfs.h>
int main(int argc, char** argv)
{
///<|===================| Classes & Declarations |===================|>
sf::Event ev;
sf::RenderWindow winMain ( sf::VideoMode( WindowWidth, WindowHeight, 32 ), WindowTitle );
sf::Image Icon;
GameStates gameState;
GameMenu TitleMenu;
MenuButton buttons[4];
PHYSFS_init(NULL);
なぜこうなった?プロジェクトでPhysFSを使用できるようにするには、何をする必要がありますか?私はCMakeでライブラリを構築し、必要なライブラリを含めました。PhysFSを初期化しようとすると、C++がプログラムをコンパイルする方法がばかげているように感じるエラーが発生しました。