This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Created attachment 121501 [details] test project Scenario: - Untar the attached project on MacOSX - Open project in IDE - Rebuild project ===> Code Assistance is not fixed
Confirmed. Preload library is not notified about exec gcc. This is trace: ------------8<------------------ $ gcc BuildTrace: func1 BuildTrace: execvp called. PATH=/usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 BuildTrace: TOOLS=gcc LOG=/var/tmp/dlight_tester/1d7a43ea/qq.txt BuildTrace: key = i686-apple-darwin11-llvm-gcc-4.2 BuildTrace: func1 BuildTrace: execve called. PATH=/usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 BuildTrace: TOOLS=gcc LOG=/var/tmp/dlight_tester/1d7a43ea/qq.txt BuildTrace: key = i686-apple-darwin11-llvm-gcc-4.2 i686-apple-darwin11-llvm-gcc-4.2: no input files ------------8<------------------ I.e. OS resolves links (by own rules) and pass resolver executable in the library. Example of link resolution: ------------8<------------------ $ type gcc gcc is hashed (/usr/bin/gcc) $ ls -la /usr/bin/gcc lrwxr-xr-x 1 root wheel 12 Jun 26 19:24 /usr/bin/gcc -> llvm-gcc-4.2 $ ls -la /usr/bin/llvm-gcc-4.2 lrwxr-xr-x 1 root admin 32 Jun 26 19:24 /usr/bin/llvm-gcc-4.2 -> ../llvm-gcc-4.2/bin/llvm-gcc-4.2 $ ls -la /usr/bin/../llvm-gcc-4.2/bin/llvm-gcc-4.2 -rwxrwxr-x 1 root admin 117152 Jul 27 2011 /usr/bin/../llvm-gcc-4.2/bin/llvm-gcc-4.2 $ file /usr/bin/../llvm-gcc-4.2/bin/llvm-gcc-4.2 /usr/bin/../llvm-gcc-4.2/bin/llvm-gcc-4.2: Mach-O universal binary with 2 architectures /usr/bin/../llvm-gcc-4.2/bin/llvm-gcc-4.2 (for architecture i386): Mach-O executable i386 /usr/bin/../llvm-gcc-4.2/bin/llvm-gcc-4.2 (for architecture x86_64): Mach-O 64-bit executable x86_64 ------------8<------------------ So manual link resolution (llvm-gcc-4.2) is not equal OS link resolution (i686-apple-darwin11-llvm-gcc-4.2): ------------8<------------------ $ ls -la /usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 -rwxrwxr-x 1 root admin 544448 Jul 27 2011 /usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 $ file /usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 /usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2: Mach-O universal binary with 2 architectures /usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 (for architecture i386): Mach-O executable i386 /usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 (for architecture x86_64): Mach-O 64-bit executable x86_64 ------------8<------------------ Last experiment: ------------8<------------------ $ sh -c gcc BuildTrace: func1 BuildTrace: execve called. PATH=/usr/bin/gcc BuildTrace: TOOLS=gcc LOG=/var/tmp/dlight_tester/1d7a43ea/qq.txt BuildTrace: key = gcc BuildTrace: found gcc BuildTrace: opened file /var/tmp/dlight_tester/1d7a43ea/qq.txt BuildTrace: log closed BuildTrace: func1 BuildTrace: execvp called. PATH=/usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 BuildTrace: TOOLS=gcc LOG=/var/tmp/dlight_tester/1d7a43ea/qq.txt BuildTrace: key = i686-apple-darwin11-llvm-gcc-4.2 BuildTrace: func1 BuildTrace: execve called. PATH=/usr/bin/../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2 BuildTrace: TOOLS=gcc LOG=/var/tmp/dlight_tester/1d7a43ea/qq.txt BuildTrace: key = i686-apple-darwin11-llvm-gcc-4.2 i686-apple-darwin11-llvm-gcc-4.2: no input files ------------8<------------------ i.e. sh pass gcc to library.
Is the issue still actual? IMHO it should be fixed in NB 7.4. Please verify.
Still actual
Work around: Replace C compiler path from /usr/bin/gcc to /usr/llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2
Same bug in MacOSX 10.11 with default GCC
There is a related issue #259035 (Implement wrapper technique in discovery in addition to preload/interpose technique)
IDE uses "tool collection wrapper" technology. See bug #259035