I’m writing a ray tracer. Recently, I added threading to the program to exploit the additional cores on my i5 Quad Core. In a weird turn of events the debug version of the application is now running slower, but the optimized build is running faster than before I added threading. I’m passing the “-g -pg” flags to gcc for the
Tag: gcc
Error compiling BASIC “libnotify” code
Compiling the code gives me “undefined reference to” error: I took the code from this blog. Answer Sounds like you forgot to pass -lnotify to actually link against libnotify.
What is the difference between LD_LIBRARY_PATH and -L at link time?
I’m having problems with LD_LIBRARY_PATH at link time (this question has nothing to do with run time). The link line looks like this when I run make (this is a Linux system using g++ version 4.1.x): The -l options reference shared libraries (e.g., libabc.so) which exist in the directories specified by the -L options. Those directories also appear in LD_LIBRARY_PATH.
What is the proper way of including linux kernel config?
I’m porting an old version of a software that is partly a linux kernel module to EL5, after doing the relevant hacks, the horrible GNU autotools mess that is used to compile the thing (no, it does not compile the kernel module via kbuild 🙁 ) I keep getting lots of warnings ‘Including config.h is deprecated’ – I am told
Is errno thread-safe?
In errno.h, this variable is declared as extern int errno; so my question is, is it safe to check errno value after some calls or use perror() in multi-threaded code. Is this a thread safe variable? If not, then whats the alternative ? I am using linux with gcc on x86 architecture. Answer Yes, it is thread safe. On Linux,
Trying to understand gcc’s complicated stack-alignment at the top of main that copies the return address
hi I have disassembled some programs (linux) I wrote to understand better how it works, and I noticed that the main function always begins with: so my question is: why all this work is done ?? I only understand the use of: the rest seems useless to me… Answer I’ve had a go at it:
How do you link to a specific version of a shared library in GCC
I’m compiling some code which uses libcurl on a Debian Linux system. My dev machine is running Debian 5 but I want the binary to be usable on older Debian 4 systems too. I find that if I specify -lcurl it will link to libcurl.so.4 but Debian 4 systems only have libcurl.so.3 Is there some way I can tell GCC
Static link of shared library function in gcc
How can I link a shared library function statically in gcc? Answer Refer to: http://www.linuxquestions.org/questions/linux-newbie-8/forcing-static-linking-of-shared-libraries-696714/ You need the static version of the library to link it. A shared library is actually an executable in a special format with entry points specified (and some sticky addressing issues included). It does not have all the information needed to link statically. You can’t
How can I add a default include path for GCC in Linux?
I’d like GCC to include files from $HOME/include in addition to the usual include directories, but there doesn’t seem to be an analogue to $LD_LIBRARY_PATH. I know I can just add the include directory at command line when compiling (or in the makefile), but I’d really like a universal approach here, as in the library case. Answer Try setting C_INCLUDE_PATH
ld cannot find an existing library
I am attempting to link an application with g++ on this Debian lenny system. ld is complaining it cannot find specified libraries. The specific example here is ImageMagick, but I am having similar problems with a few other libraries too. I am calling the linker with: ld complains: However, libmagic exists: How do I diagnose this problem further, and what