0 votes
asked ago by (120 points)

$ make

Configure: Writing current dir to this_dir.mk

Building ITensor library

make[1]: Entering directory '/cygdrive/c/Users/vadim/itensor/itensor'
Compiling itensor/itensor_operators.cc in debug mode

/usr/lib/gcc/x8664-pc-cygwin/7.4.0/../../../../x8664-pc-cygwin/bin/as: .debugobjs/itensoroperators.o: section .debugframe$ZN7itensor6detail5FuncTINS08CallWrapINS012RegisterTaskINS07TwoArgsISt10sharedptrINS6ITDataEENS6CPDataEEEONS8ContractINS7IQIndexEEENS8NoneTypeEEESCKNS6ScalarISt7complexIdEEESES7S8EENS8TypeListIJNS6QDenseISIEENS9QCombinerENS5QDiagIdEENSQISIEENS6QMixedIdEENSTISIEENSGIdEESJEEEE7applyToERKSO_: string table overflow at offset 10000178
/tmp/ccoviA1e.s: Assembler messages:
/tmp/ccoviA1e.s: Fatal error: can't close .debugobjs/itensoroperators.o: File too big
Failure while executing command: g++ -std=c++11 -Wa,-mbig-obj -O2 -fPIC -c -I/cygdrive/c/Users/vadim/itensor -DDEBUG -g -Wall -pedantic -DPLATFORM_lapack -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0 -o .debug_objs/itensor_operators.o itensor_operators.cc
make[1]: *** [Makefile:64: .debug_objs/itensor_operators.o] Error 1
make[1]: Leaving directory '/cygdrive/c/Users/vadim/itensor/itensor'
make: *** [Makefile:14: itensor] Error 2

commented ago by (120 points)
it appears that cc1plus.exe runs out of memory (2gb ram?) -- there are workarounds, e.g. https://sysprogs.com/w/forums/topic/cc1plus-exe-out-of-memory-allocating-65536-bytes/
commented ago by (120 points)
found this other thread...http://itensor.org/support/1260/installation....didn't seem resolved then (I also tried O2->O3 replacement), also didn't work from ubuntu (under windows) with a different looking error, still on the same file
commented ago by (32.1k points)
Hi Vadim, thanks for bringing this up. It's been a thorn in our side in wanting to support Windows, but cygwin's compiler not being very good. So we could keep coming up with workarounds, but really it's a bug that's with cygwin and not with ITensor per se.

I was going to suggest you try Ubuntu on Windows instead (https://www.microsoft.com/en-us/p/ubuntu/9nblggh4msv6?activetab=pivot:overviewtab). But did you say above that you tried that already and it didn't work? If so, what didn't work? Was it the same issue or a different issue? Thanks -

Miles
commented ago by (120 points)
yup. ubuntu make chokes on the same file as Cygwin albeit with somewhat different error (see below). I haven't had the time to educate myself re: "-mbig-obj". Also, I am not sure if I ran ubuntu on a fresh copy of itensor...maybe that is important.
Configure: Writing current dir to this_dir.mk

Building ITensor library

make[1]: Entering directory '/mnt/c/Users/vadim/PHYSICS/itensor/itensor'
Compiling itensor/itensor_operators.cc in debug mode
as: unrecognized option '-mbig-obj'
Failure while executing command: g++ -std=c++11 -Wa,-mbig-obj -O3 -fPIC -c -I/mnt/c/Users/vadim/PHYSICS/itensor  -DDEBUG -g -Wall -pedantic -DPLATFORM_lapack -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0 -o .debug_objs/itensor_operators.o itensor_operators.cc
Makefile:62: recipe for target '.debug_objs/itensor_operators.o' failed
make[1]: *** [.debug_objs/itensor_operators.o] Error 1
make[1]: Leaving directory '/mnt/c/Users/vadim/PHYSICS/itensor/itensor'
Makefile:11: recipe for target 'itensor' failed
make: *** [itensor] Error 2
vadim@1N223-VO3:/mnt/c/Users/vadim/PHYSICS/itensor$
commented ago by (32.1k points)
Hi Vadim, glad you are trying that instead.

Based on the error message, it actually looks like the Ubuntu one is not (yet) choking on the file, but rather saying it doesn't recognize the "-mbig-obj" flag. So could you please try removing that flag and compiling again?

Please log in or register to answer this question.

Welcome to ITensor Support Q&A, where you can ask questions and receive answers from other members of the community.

Formatting Tips:
  • To format code, indent by four spaces
  • To format inline LaTeX, surround it by @@ on both sides
  • To format LaTeX on its own line, surround it by $$ above and below
  • For LaTeX, it may be necessary to backslash-escape underscore characters to obtain proper formatting. So for example writing \sum\_i to represent a sum over i.
If you cannot register due to firewall issues (e.g. you cannot see the capcha box) please email Miles Stoudenmire to ask for an account.

To report ITensor bugs, please use the issue tracker.

Categories

...