...如果是这样,该怎么做呢?
具体来说,我想在Mac OS X Snow Leopard 10.6.8上编译和运行wavdiff。据我所知(由于我对C ++完全是个新手),它是使用MS Visual C ++或类似软件创建的。
我将非常感激那些能够解决在Mac OS X或Linux上编译Visual C ++程序的一般情况以及解决上述特定挑战的答案。
...如果是这样,该怎么做呢?
具体来说,我想在Mac OS X Snow Leopard 10.6.8上编译和运行wavdiff。据我所知(由于我对C ++完全是个新手),它是使用MS Visual C ++或类似软件创建的。
我将非常感激那些能够解决在Mac OS X或Linux上编译Visual C ++程序的一般情况以及解决上述特定挑战的答案。
C++语言是可移植的。理论上,C++源代码可以编译运行在任何平台上。
然而,有几个需要注意的问题:
所以,这真的取决于代码。干净、高质量的代码通常很容易实现可移植性。当然,直接依赖于操作系统服务的部分必须为不同的操作系统重新编写(或者可以使用跨平台封装/库,在可移植的方式下完成相同的事情)。
-ansi
、-pedantic
以及-std=c++98
/-std=c++0x
非常有用)。 - jalf这个程序不容易进行移植(重新编译而无需源代码更改)。至少在没有对源代码进行更改的情况下是不可能的。它依赖于Windows库,并且在某些部分与Windows API相关联。
问题不在于它是用VC++编写的,而在于它有这些依赖项。如果一个程序被编码为没有平台依赖性,那么在很多情况下只需要在目标平台上重新编译或使用切换来针对不同平台即可轻松移植。
仅从这个源文件来看,代码本身似乎是相当可移植的C ++。问题是它(或任何它使用的类)是否使用了其他平台上不存在的Windows API。你可以问作者他们的想法,或者尝试一下。