On Fri, May 29, 2015 at 10:23 AM, Forrest Curo treegestalt@gmail.com wrote:
[Thanks!] Oops, that last apt-get update left me with no gcc...!
But after fixing that:
root@lapcritter:/usr/lib/puredata/doc/6.externs# make pd_linux gcc -DPD -O2 -funroll-loops -fomit-frame-pointer -Wall -W -Wshadow -Wstrict-prototypes -Werror -Wno-unused -Wno-parentheses -Wno-switch -I../../src -o obj1.o -c obj1.c ld -shared -o obj1.pd_linux obj1.o -lc -lm ld: obj1.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC obj1.o: could not read symbols: Bad value make: *** [obj1.pd_linux] Error 1
Edit your makefile and make sure CFLAGS includes "-fPIC"
root@lapcritter:/usr/lib/puredata/doc/6.externs# nano makefile root@lapcritter:/usr/lib/puredata/doc/6.externs# make pd_linux gcc -DPD -O2 -funroll-loops -fomit-frame-pointer -Wall -W -Wshadow -Wstrict-prototypes -Werror -Wno-unused -Wno-parentheses -Wno-switch -I../../src -fPIC -o obj1.o -c obj1.c ld -shared -o obj1.pd_linux obj1.o -lc -lm ld: cannot find -lc ld: cannot find -lm make: *** [obj1.pd_linux] Error 1
You should have a /usr/lib/libc.so or /usr/lib64/libc.so
and /usr/lib/libm.so or /usr/lib64/libm.so
Check for these files first. If they are not there, then you are missing some very fundamental build tools. It's among the first things to install in linux, so I'll never remember the names for the packages.
If the files ARE there, then your linker "ld" is missing them. Run: ldconfig
Chuck
On Fri, May 29, 2015 at 7:48 AM, Charles Z Henry czhenry@gmail.com wrote:
Hi Forrest,
You can edit the makefile and replace "cc" with "gcc".
On my system, "cc" is just a symlink to "gcc": [root@farnsworth asdf]# ls -l
which cc
lrwxrwxrwx 1 root root 3 Apr 6 11:36 /bin/cc -> gccYou can add that symlink as well: ln -s /bin/gcc /bin/cc
Chuck
On Fri, May 29, 2015 at 9:38 AM, Forrest Curo treegestalt@gmail.com wrote:
[I'd had this process down a few updates ago...]
running as root, cd-ing to the directory containing these patches:
/usr/lib/puredata/doc/6.externs# make pd_linux cc -DPD -O2 -funroll-loops -fomit-frame-pointer -Wall -W -Wshadow -Wstrict-prototypes -Werror -Wno-unused -Wno-parentheses -Wno-switch -I../../src -o obj1.o -c obj1.c make: cc: Command not found make: *** [obj1.pd_linux] Error 127
Any good way to just point gcc at each .c file?
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list