Jindo, there seems to be a compiler bug in pgcc. I was able to get it working by adding some dummy code in function dict_hdr_get_new_id in file mysql/innobase/include/dict0boot.ic
Below is a new body for the function. I added a dummy if in the middle of the the body and then it started to work. Also run-all-tests --small-test --small-tables --create-options=type=innodb worked. But I guess that pgcc is not maintained too actively, and using the ordinary gcc would be better. Regards, Heikki http://www.innodb.com ............ { dict_hdr_t* dict_hdr; dulint id; mtr_t mtr; ut_ad((type == DICT_HDR_TABLE_ID) || (type == DICT_HDR_INDEX_ID) || (type == DICT_HDR_MIX_ID)); mtr_start(&mtr); dict_hdr = dict_hdr_get(&mtr); id = mtr_read_dulint(dict_hdr + type, MLOG_8BYTES, &mtr); /* We insert here dummy code because pgcc seems to compile wrong otherwise */ if (ut_dulint_cmp(id, ut_dulint_max) == 0) { printf("Max id\n"); } id = ut_dulint_add(id, 1); mlog_write_dulint(dict_hdr + type, id, MLOG_8BYTES, &mtr); mtr_commit(&mtr); return(id); } .............. >Hi, > >Has anyone been able to build MySQL 4.0 source using pgcc? >I tried for several hours with different setting in each try without any success. >MySQL 4.0 alpha does compile, but it refuses to start, dumping the same >error output each time such attempt is made: >******* Being error output ******* >InnoDB: The first specified data file /usr/local/mysql/data/ibdata1 did not exist: >InnoDB: a new database to be created! >InnoDB: Setting file /usr/local/mysql/data/ibdata1 size to 67108864 >InnoDB: Database physically writes the file full: wait... >InnoDB: Log file /usr/local/mysql/data/ib_logfile0 did not exist: new to be created >InnoDB: Setting log file /usr/local/mysql/data/ib_logfile0 size to 5242880 >InnoDB: Log file /usr/local/mysql/data/ib_logfile1 did not exist: new to be created >InnoDB: Setting log file /usr/local/mysql/data/ib_logfile1 size to 5242880 >InnoDB: Doublewrite buffer not found: creating new >InnoDB: Doublewrite buffer created >InnoDB: creating foreign key constraint system tables >InnoDB: Assertion failure in thread 1024 in file dict0crea.c line 1115 >InnoDB: We intentionally generate a memory trap. >InnoDB: Send a detailed bug report to [EMAIL PROTECTED] got signal 11; >This could be because you hit a bug. It is also possible that this binary >or one of the libraries it was linked against is corrupt, improperly built, >or misconfigured. This error can also be caused by malfunctioning hardware. >We will try our best to scrape up some info that will hopefully help diagnose >the problem, but since we have already crashed, something is definitely wrong >and this may fail. --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php