簡體   English   中英

C ++ libsndfile和Mac OSX

[英]C++ libsndfile and mac osx

我已經在很多地方看到過這個問題,但是我對C ++還是相當陌生,並且我嘗試遵循每個答案。 我正在嘗試將libsndfile lib與XCode和mac osx特立獨行一起使用。 但是問題在於

/* The following typedef is system specific and is defined when libsndfile is
 ** compiled. sf_count_t can be one of loff_t (Linux), off_t (*BSD), off64_t
 ** (Solaris), __int64_t (Win32) etc. On windows, we need to allow the same
 ** header file to be compiler by both GCC and the microsoft compiler.
 */

#ifdef _MSCVER
typedef __int64_t       sf_count_t ;
#define SF_COUNT_MAX            0x7fffffffffffffffi64
#else
typedef __int64_t   sf_count_t ;
#define SF_COUNT_MAX            0x7FFFFFFFFFFFFFFFLL
#endif

在哪里收到錯誤“未知類型名稱'__int64'”的錯誤,我知道這是由於__int64用於Windows,但如何為Mac更改呢?

我對這個圖書館不熟悉。 您確定包含正確的頭文件嗎? 從注釋看來,該文件旨在與Windows一起使用。 無論如何...

__int64_t應該在其他標頭中定義。 很長時間以來都是typedef。 要解決此問題,您可以添加typedef long long __int64_t;。 在包含標題之前。

我發現了一些可行的方法。 對於希望與Mac一起使用libsndfile庫的任何人,請查看以下內容:

https://github.com/angeloseme/ofxLibsndfileRecorder

下載文件並轉儲src文件夾中的所有文件。 完美運作。 感謝作者。

暫無
暫無

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

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