I’m trying to compile the source of Rosetta 3.1 in test mode to be able to run the unit tests, but get an error message.
The system is an intel Mac OS 10.5.8:
kernel: 9.8.0 Darwin Kernel Version 9.8.0
gcc: i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5490)
scons: script: v1.2.0.r3842
When I try:
g++ -o build/test/debug/macos/9.8/32/x86/gcc/ObjexxFCL.test -Wl,-stack_size,4000000,-stack_addr,0xc0000000 build/test/debug/macos/9.8/32/x86/gcc/ObjexxFCL/ObjexxFCL.cxxtest.o -Llib -Lexternal/lib -Lbuild/src/debug/macos/9.8/32/x86/gcc -L/usr/local/lib -L/usr/lib -lObjexxFCL
ld: library not found for -lObjexxFCL
collect2: ld returned 1 exit status
scons: *** [build/test/debug/macos/9.8/32/x86/gcc/ObjexxFCL.test] Error 1
scons: building terminated because of errors.
I see that the ObjexxFCL library is somewhere in the arborescence, but I don’t know how to pass the information for compiling via scons.
I would appreciate if you can help me with this issue.
A) There’s pretty much 0 reason for users to run the unit tests unless they’re doing their own development. We include them for convenience but there’s no real need to run them.
This linker error probably indicates that you did not build the libraries first. SCons misbehaves with cat=test and simply assumes all of the libraries were built first. You need to run “scons” or “scons bin” to get the debug mode libraries built before the tests can be built.