Opened 6 years ago

Closed 5 years ago

Last modified 5 years ago

#56706 closed defect (fixed)

doxygen @1.8.13 fails to build when arpack is installed

Reported by: ShadSterling (Shad Sterling) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.5.2
Keywords: Cc: isoboroff (Ian Soboroff)
Port: doxygen

Description

This looks like the relevant part of main.log:

:info:build [ 42%] Building CXX object src/CMakeFiles/_doxygen.dir/__/generated_src/pre.cpp.o
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src && /usr/bin/clang++  -DYY_BUF_SIZE=262144 -DYY_READ_BUF_SIZE=262144 -I/opt/local/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/qtools -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/libmd5 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/vhdlparser -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/generated_src  -pipe -Os -stdlib=libc++ -DNDEBUG -arch x86_64 -mmacosx-version-min=10.13   -o CMakeFiles/_doxygen.dir/__/generated_src/pre.cpp.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/generated_src/pre.cpp
:info:build In file included from pre.l:47:
:info:build /opt/local/include/debug.h:1:1: error: expected unqualified-id
:info:build !
:info:build ^
:info:build pre.l:79:10: error: field has incomplete type 'BufStr'
:info:build   BufStr fileBuf;
:info:build          ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/pre.h:21:7: note: forward declaration of 'BufStr'
:info:build class BufStr;
:info:build       ^
:info:build pre.l:1456:62: error: member access into incomplete type 'BufStr'
:info:build   if (g_includeStack.isEmpty() || g_curlyCount>0) g_outputBuf->addChar(c);
:info:build                                                              ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/pre.h:21:7: note: forward declaration of 'BufStr'
:info:build class BufStr;
:info:build       ^
:info:build pre.l:1461:62: error: member access into incomplete type 'BufStr'
:info:build   if (g_includeStack.isEmpty() || g_curlyCount>0) g_outputBuf->addArray(a,len);
:info:build                                                              ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/pre.h:21:7: note: forward declaration of 'BufStr'
:info:build class BufStr;
:info:build       ^
:info:build pre.l:1545:11: error: use of undeclared identifier 'Debug'
:info:build       if (Debug::isFlagSet(Debug::Preprocessor))
:info:build           ^
:info:build pre.l:1545:28: error: use of undeclared identifier 'Debug'
:info:build       if (Debug::isFlagSet(Debug::Preprocessor))
:info:build                            ^
:info:build pre.l:1549:11: error: use of undeclared identifier 'Debug'
:info:build           Debug::print(Debug::Preprocessor,0,"  ");
:info:build           ^
:info:build pre.l:1549:24: error: use of undeclared identifier 'Debug'
:info:build           Debug::print(Debug::Preprocessor,0,"  ");
:info:build                        ^
:info:build pre.l:1619:11: error: use of undeclared identifier 'Debug'
:info:build       if (Debug::isFlagSet(Debug::Preprocessor))
:info:build           ^
:info:build pre.l:1619:28: error: use of undeclared identifier 'Debug'
:info:build       if (Debug::isFlagSet(Debug::Preprocessor))
:info:build                            ^
:info:build pre.l:1623:11: error: use of undeclared identifier 'Debug'
:info:build           Debug::print(Debug::Preprocessor,0,"#include %s: already included! skipping...\n",qPrint(incFileName));
:info:build           ^
:info:build pre.l:1623:24: error: use of undeclared identifier 'Debug'
:info:build           Debug::print(Debug::Preprocessor,0,"#include %s: already included! skipping...\n",qPrint(incFileName));
:info:build                        ^
:info:build pre.l:1627:11: error: use of undeclared identifier 'Debug'
:info:build           Debug::print(Debug::Preprocessor,0,"#include %s: not found! skipping...\n",qPrint(incFileName));
:info:build           ^
:info:build pre.l:1627:24: error: use of undeclared identifier 'Debug'
:info:build           Debug::print(Debug::Preprocessor,0,"#include %s: not found! skipping...\n",qPrint(incFileName));
:info:build                        ^
:info:build pre.l:1717:30: error: member access into incomplete type 'BufStr'
:info:build   int bytesInBuf = g_inputBuf->curPos()-g_inputBufPos;
:info:build                              ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/pre.h:21:7: note: forward declaration of 'BufStr'
:info:build class BufStr;
:info:build       ^
:info:build pre.l:1719:24: error: member access into incomplete type 'BufStr'
:info:build   memcpy(buf,g_inputBuf->data()+g_inputBufPos,bytesToCopy);
:info:build                        ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/pre.h:21:7: note: forward declaration of 'BufStr'
:info:build class BufStr;
:info:build       ^
:info:build pre.l:3016:24: error: member access into incomplete type 'BufStr'
:info:build   uint orgOffset=output.curPos();
:info:build                        ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/pre.h:21:7: note: forward declaration of 'BufStr'
:info:build class BufStr;
:info:build       ^
:info:build pre.l:3200:7: error: use of undeclared identifier 'Debug'
:info:build   if (Debug::isFlagSet(Debug::Preprocessor))
:info:build       ^
:info:build pre.l:3200:24: error: use of undeclared identifier 'Debug'
:info:build   if (Debug::isFlagSet(Debug::Preprocessor))
:info:build                        ^
:info:build fatal error: too many errors emitted, stopping now [-ferror-limit=]
:info:build 20 errors generated.
:info:build make[2]: *** [src/CMakeFiles/_doxygen.dir/__/generated_src/pre.cpp.o] Error 1

Attachments (1)

main.log (116.6 KB) - added by ShadSterling (Shad Sterling) 6 years ago.

Download all attachments as: .zip

Change History (11)

Changed 6 years ago by ShadSterling (Shad Sterling)

Attachment: main.log added

comment:1 Changed 6 years ago by jmroot (Joshua Root)

Cc: css@… removed
Owner: set to cssdev
Status: newassigned
Summary: doxygen fails to builddoxygen @1.8.13 fails to build

comment:2 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

What port installed the file /opt/local/include/debug.h? (port provides /opt/local/include/debug.h)

comment:3 Changed 6 years ago by ShadSterling (Shad Sterling)

/opt/local/include/debug.h is provided by: arpack

arpack @3.6.0_0+accelerate+gfortran is active (current version, default variants)

Looks like arpack was installed as a dependency of julia @0.6.2_1+gcc6 (current version, default variants are +gcc7). I'm not sure why julia isn't installed with default variants, I'd guess the default variant changed after it was first installed.

comment:4 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

I can confirm the build failure of doxygen when arpack is installed.

The problem is of course as usual that doxygen puts the -I flags in the wrong order. -I/opt/local/include appears before the flags for the doxygen build directories; it should instead appear after.

comment:5 Changed 6 years ago by isoboroff (Ian Soboroff)

I also have a problem building this port. Here is the bit that fails (definition.cpp, problems finding md5 stuff) in main.log...

:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src && /usr/bin/clang++  -DYY_BUF_SIZE=262144 -DYY_READ_BUF_SIZE=262144 -I/opt/local/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/qtools -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/libmd5 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/vhdlparser -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/generated_src  -pipe -Os -stdlib=libc++ -DNDEBUG -arch x86_64 -mmacosx-version-min=10.13   -o CMakeFiles/_doxygen.dir/definition.cpp.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/definition.cpp
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dirdef.cpp:92:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)anchor.data(),anchor.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dirdef.cpp:93:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build 2 errors generated.
:info:build make[2]: *** [src/CMakeFiles/_doxygen.dir/dirdef.cpp.o] Error 1
:info:build make[2]: *** Waiting for unfinished jobs....
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/definition.cpp:551:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)docStr.data(),docStr.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/definition.cpp:552:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:2276:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)theGraph.data(),theGraph.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:2277:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build 2 errors generated.
:info:build make[2]: *** [src/CMakeFiles/_doxygen.dir/definition.cpp.o] Error 1
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:3044:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)buf.data(),buf.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:3045:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:3959:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)theGraph.data(),theGraph.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:3960:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:4104:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)theGraph.data(),theGraph.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:4105:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:4512:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)theGraph.data(),theGraph.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dot.cpp:4513:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build 10 errors generated.
:info:build make[2]: *** [src/CMakeFiles/_doxygen.dir/dot.cpp.o] Error 1
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13'
:info:build make[1]: *** [src/CMakeFiles/_doxygen.dir/all] Error 2
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13'
:info:build make: *** [all] Error 2
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13" && /usr/bin/make -j4 -w all VERBOSE=ON 
:info:build Exit code: 2
:error:build Failed to build doxygen: command execution failed
:debug:build Error code: CHILDSTATUS 16409 2
:debug:build Backtrace: command execution failed
:debug:build     while executing
:debug:build "system {*}$notty {*}$nice $fullcmdstring"
:debug:build     invoked from within
:debug:build "command_exec build"
:debug:build     (procedure "portbuild::build_main" line 8)
:debug:build     invoked from within
:debug:build "$procedure $targetname"
:error:build See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/main.log for details.
Last edited 6 years ago by isoboroff (Ian Soboroff) (previous) (diff)

comment:6 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Summary: doxygen @1.8.13 fails to builddoxygen @1.8.13 fails to build when arpack is installed

comment:7 in reply to:  5 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: isoboroff added

Replying to isoboroff:

I also have a problem building this port. Here is the bit that fails (definition.cpp, problems finding md5 stuff) in main.log...

:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src && /usr/bin/clang++  -DYY_BUF_SIZE=262144 -DYY_READ_BUF_SIZE=262144 -I/opt/local/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/qtools -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/libmd5 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/vhdlparser -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/generated_src  -pipe -Os -stdlib=libc++ -DNDEBUG -arch x86_64 -mmacosx-version-min=10.13   -o CMakeFiles/_doxygen.dir/definition.cpp.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/definition.cpp
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dirdef.cpp:92:3: error: use of undeclared identifier 'MD5Buffer'
:info:build   MD5Buffer((const unsigned char *)anchor.data(),anchor.length(),md5_sig);
:info:build   ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_textproc_doxygen/doxygen/work/doxygen-1.8.13/src/dirdef.cpp:93:3: error: use of undeclared identifier 'MD5SigToString'
:info:build   MD5SigToString(md5_sig,sigStr.rawData(),33);
:info:build   ^
:info:build 2 errors generated.

This is a similar problem. It has the same underlying cause—-I flags in the wrong order—except that in this case the port that installed the conflicting file is not arpack but libmd. This was also reported separately in #59037.

To work around the problem, temporarily deactivate the port that provides the conflicting file (libmd in this case, or arpack for the problem reported in this ticket originally), then build doxygen, then you can reactivate the conflicting port.

Chris, can you fix the build system to put the -I flags in the right order? If that's not possible right now, could you at least use the conflicts_build portgroup?

comment:8 Changed 5 years ago by mf2k (Frank Schima)

Owner: cssdev deleted

See #50332

comment:9 Changed 5 years ago by kencu (Ken)

Resolution: fixed
Status: assignedclosed

this no longer occurs, and arpack no longer has a header called debug.h.

comment:10 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)

arpack does still have a debug.h header, but all of its headers are now in an arpack subdirectory so they won't cause this problem anymore.

Note: See TracTickets for help on using tickets.