SAY 发表于 2024-3-1 23:00:58

该死的gcc 4.5.0终于编译过去lidia 2.3.0了

有个旧本本P3 1G/128M滴,装了Arch Linux i686版本
可悲的gcc 4.5.0编译最新稳定版lidia-2..0编译不过去

在文件src/base/system/precondition_error.cc卡住
俺对现在滴C++语法实在是陌生
不敢动手
今天忍不住了,改之,终于过去
==================================
PS
论坛网页对Opera不太友好啊

修改两处,前面是原程序,后面是修改的
45行
precondition_error::precondition_error(const condition_error::precondition_error& pce)
----------------------------------------------------------------------------------------------
precondition_error::precondition_error(const precondition_error& pce)

63,64行
precondition_error::precondition_error& precondition_error::
operator=(const precondition_error::precondition_error& pce) {
---------------------------------------------------------------------------------
precondition_error& precondition_error::
operator=(const precondition_error& pce) {

evuojad 发表于 2024-3-1 23:01:57

确认了,只需要修改那个文件即可编译通过

oliajazpafi 发表于 2024-3-1 23:02:16

也就是说,gcc4.5.0
需要将 condition_error::precondition_error
换成
precondition_error

这个怎么解释呢,

我查看了release note 也没看出相关的东西来

oasuoxi 发表于 2024-3-1 23:02:27

pce 是不是也是在condition_error域里面

ocideeweguy 发表于 2024-3-1 23:02:32

GiNaC发布了1.5.8了,release note里明显解释了针对gcc4.5.0做了一些修改

http://www.ginac.de/News.html

Dennislem 发表于 2024-3-1 23:02:44

应该是precondition_error,可能被我修改的
这个可能涉及到作用域的隐含问题
和命名空间的相互作用
等等的

我C++学不好,不会解释

kutnfeuwunaxo 发表于 2024-3-1 23:03:21

6# 无心人
看你贴的45行,圆括号里面的,有condition_error::precondition_error

呵呵,当然也有precondition_error::precondition_error

ocideeweguy 发表于 2024-3-1 23:03:39

试试gcc4.5.1,看问题还在不在

erawaliktevi 发表于 2024-3-1 23:04:29



出来4.5.1啦
等我试试
我是个破本本

编译太慢,等我去学校再说
页: [1]
查看完整版本: 该死的gcc 4.5.0终于编译过去lidia 2.3.0了