c的代码在Linux上运行不了,无法在Linux上编译C代码,但可以在Mac OS上编译

对于我正在研究的项目,我想尝试以下程序:

http://sourceforge.net/projects/tirg/

它由两个C文件组成,但是我无法在运行Linux的笔记本电脑上进行编译,而在我的朋友运行Mac OS的笔记本电脑上编译没有任何问题.我没有任何编译C代码的经验,所以它可能是初学者的错误.

运行Mac OS的笔记本电脑设法编译代码没有问题使用以下g版本:

i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)

我尝试使用gcc,g,clang和clang在运行Arch LInux(64位)的笔记本电脑上使用以下版本编译C文件:

gcc and g++ (GCC) 4.8.1 20130725 (prerelease)

clang version 3.3 (tags/RELEASE_33/final)

Target: x86_64-unknown-linux-gnu

Thread model: posix

编译时得到的错误是:

/usr/include/c++/4.8.1/bits/stl_vector.h:1240:36: error: no matching function for call to ‘std::vector<:vector char> >::_M_fill_assign(int&, int&)’

{ _M_fill_assign(__n, __val); }

^

这是由这行代码引起的:

std::vector<:vector> > a(300, 255);

我在编译OpenCV时也遇到了问题,因此我的配置可能有问题.我认为这是版本问题,例如标准库的错误版本.

希望有更多C经验的人可以指出可能出错的地方.谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值