Sponsored Content
Top Forums Programming probs compiling with gcc + lpthread Post 302172152 by JamesGoh on Sunday 2nd of March 2008 10:14:59 PM
Old 03-02-2008
probs compiling with gcc + lpthread

Im trying to write a program atm which uses mutexes to control thread access to a certain code section ( the critical section).

However, whenever I compile the code using gcc I get the following message from gcc

Unresolved text symbol "pthread_mutex_lock"
Unresolved text symbol "pthread_mutex_unlock"


I initalise my mutex as follows, after including <pthread.h> in my code

Code:
pthread_mutex_init(&cs_mutex,NULL);

The critical section is accessed in the following way. Note that this code segment is generic as my threads perform the same functionality

Code:
pthread_mutex_lock(&cs_mutex);

/*
Do critical section stuff here

*/
pthread_mutex_unlock(&cs_mutex);




I have included the -lpthread (which is needed to support thread functionality in the program ) in the compiling command, so I cannot understand why my code is not compiling

Last edited by JamesGoh; 03-03-2008 at 12:01 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

probs compiling lex

this is my lex file ------------ test.l %% printf("%c",yytext+'a'-'A');.ECHO; how do i compile it $ lex test.l cc lex.yy.c -o test -ll <------| | if this is correct do i add this line--------| @the command line or does it... (0 Replies)
Discussion started by: sinner
0 Replies

2. Programming

beginner at C: Need help compiling/linking with gcc

I'm trying to do something fairly simple but keep getting frustrating messages.. Here it is: I have 3 files: init.h <header> init.c <#include <curses.h> and "init.h"> main.c <#include "init.h"> now, how can I compile my main.c using gcc? ( I have a hard time making the init.o) ... (1 Reply)
Discussion started by: My_Name
1 Replies

3. Programming

syntax error while compiling in gcc

hello, i have a structure defined as follows struct Image { int lenght; int height; }; and i have another structure where i declare a array of the above structure struct ShapeImage { Image image; }; when i compile this code with gcc it shows me the following error : ... (3 Replies)
Discussion started by: svh
3 Replies

4. UNIX for Dummies Questions & Answers

errors compiling gcc 4.2.1

Hello, I have never had a successful compile on the 2.6 kernel. On every arch in which I try to compile gcc I get either "i686-pc-cygwin-ar command not found or "i686-suse-linux-ar command not found. This always happens during the make process after configure checks for ar and finds it's just ar.... (2 Replies)
Discussion started by: kwa71
2 Replies

5. Programming

gcc compiling with -DUSE_LONGLONG

Sorry for a silly question. I a program that need to compile with -DUSE_LONGLONG to turn on the long Int as the document of that program said so, but I really don't know how to do this. I normally do this: ./configure make make install and it works fine. But I don't know how to compile... (2 Replies)
Discussion started by: hiepng
2 Replies

6. Solaris

Problem compiling Samba 3.5.1 on Solaris 10 with gcc (3.4.6)

I'm getting this error when 'Linking shared library bin/libtalloc.so.2'... anyone know what's up here? Using CFLAGS = -O -I. -I/source/samba-3.5.1/source3 -I/source/samba-3.5.1/source3/../lib/popt -I/source/samba-3.5.1/source3/iniparser/src -Iinclude -I./include -I. -I. -I./../lib/replace... (6 Replies)
Discussion started by: son_t
6 Replies

7. Programming

gcc compiling error

I am using gcc to compile c objects on solaris 5.10 and hit the following error messages: /usr/include/sys/vfs.h:323: error: syntax error before "statvfs64_t" /usr/include/sys/vfs.h:334: error: syntax error before "statvfs64_t" gmake: *** Error 1 The c program files were copied over from... (3 Replies)
Discussion started by: med7006
3 Replies

8. Programming

Problem with static compiling - GCC

Hi guys. I want to compile three files: gcc -static main.c fib.c fib.h it is pure C i mean i use standard C library. but it gives me this error: /usr/bin/ld: cannot find -lc collect2: ld returned 1 exit status what should i do? (4 Replies)
Discussion started by: majid.merkava
4 Replies

9. Programming

Compiling a 64 bits program using gcc

Hi Everyone, I can ask what is the option to compile a 64 bits program using gcc. I have looked everywhere but can't find it. Before I used to use cc and the -q64 flag was the option to generate the 64 bits binary. Can anyone tell me what is the flags when using gcc. Thanks...... (3 Replies)
Discussion started by: arizah
3 Replies

10. UNIX for Beginners Questions & Answers

Compiling GCC 6.3.0 - Error with Library

First of all -- thanks for being patient with me. I hope I'm submitting this correctly. Also I haven't done UNIX Admin since the early 1990's. I'm actually a DBA. But, since I'm the one in the office with the UNIX experience, I'm the SA. I haven't been able to compile GCC 6.3.0 which I need... (9 Replies)
Discussion started by: PJ_Namias
9 Replies
MYSQL_CONFIG(1) 					       MySQL Database System						   MYSQL_CONFIG(1)

NAME
mysql_config - display options for compiling clients SYNOPSIS
mysql_config options DESCRIPTION
mysql_config provides you with useful information for compiling your MySQL client and connecting it to MySQL. It is a shell script, so it is available only on Unix and Unix-like systems. mysql_config supports the following options. o --cflags Compiler flags to find include files and critical compiler flags and defines used when compiling the libmysqlclient library. The options returned are tied to the specific compiler that was used when the library was created and might clash with the settings for your own compiler. Use --include for more portable options that contain only include paths. o --include Compiler options to find MySQL include files. o --libmysqld-libs, --embedded Libraries and options required to link with the MySQL embedded server. o --libs Libraries and options required to link with the MySQL client library. o --libs_r Libraries and options required to link with the thread-safe MySQL client library. In MySQL 5.5, all client libraries are thread-safe, so this option need not be used. The --libs option can be used in all cases. o --plugindir The default plugin directory path name, defined when configuring MySQL. o --port The default TCP/IP port number, defined when configuring MySQL. o --socket The default Unix socket file, defined when configuring MySQL. o --version Version number for the MySQL distribution. If you invoke mysql_config with no options, it displays a list of all options that it supports, and their values: shell> mysql_config Usage: /usr/local/mysql/bin/mysql_config [options] Options: --cflags [-I/usr/local/mysql/include/mysql -mcpu=pentiumpro] --include [-I/usr/local/mysql/include/mysql] --libs [-L/usr/local/mysql/lib/mysql -lmysqlclient -lpthread -lm -lrt -lssl -lcrypto -ldl] --libs_r [-L/usr/local/mysql/lib/mysql -lmysqlclient_r -lpthread -lm -lrt -lssl -lcrypto -ldl] --socket [/tmp/mysql.sock] --port [3306] --version [5.5.31] --libmysqld-libs [-L/usr/local/mysql/lib/mysql -lmysqld -lpthread -lm -lrt -lssl -lcrypto -ldl -lcrypt] You can use mysql_config within a command line using backticks to include the output that it produces for a particular option. For example, to compile and link a MySQL client program, use mysql_config as follows: shell> gcc -c `mysql_config --cflags` progname.c shell> gcc -o progname progname.o `mysql_config --libs` COPYRIGHT
Copyright (C) 1997, 2014, Oracle and/or its affiliates. All rights reserved. This documentation is free software; you can redistribute it and/or modify it only under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License. This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/. SEE ALSO
For more information, please refer to the MySQL Reference Manual, which may already be installed locally and which is also available online at http://dev.mysql.com/doc/. AUTHOR
Oracle Corporation (http://dev.mysql.com/). MySQL 5.5 01/30/2014 MYSQL_CONFIG(1)
All times are GMT -4. The time now is 11:05 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy