OESF Portables Forum
Model Specific Forums => Sharp Zaurus => Zaurus - pdaXrom => Topic started by: Seb on February 27, 2006, 02:05:10 pm
-
in order to install physfs (here: 1.1.0) i did the following:
./configure
make
make install
(checked where it was installed:
physfs.h
in /usr/local/include
and
libphysfs.so
libphysfs.la
libphysfs.a
in /usr/local/lib)
then i ran ldconfig
(yes, /usr/local/lib *IS* in /etc/ld.so.conf)
and i exported CFLAGS="-I/usr/include/SDL -I/usr/local/include" (the first -I is for SDL_gfx)
before configuring lincity-ng with
./configure --prefix=/mnt/ext/usr (where /mnt/ext is my ext3-partition on SD)
but this fails with:
checking for phyfs >= 1.0.0... not found
configure: error: Please install physfs >= 1.0
now my questions:
- is there something else i have to do besides the ./configure make make install ldconfig to install physfs?
- how (in general) can i find out *WHERE* something is installed when not setting "--prefix" arguments? (*ashamed* )
- could the problem be connected to lincity-ng in spite of physfs?
any help is very much appreciated
regards
seb
-
now my questions:
- is there something else i have to do besides the ./configure make make install ldconfig to install physfs?
- how (in general) can i find out *WHERE* something is installed when not setting "--prefix" arguments? (*ashamed* )
- could the problem be connected to lincity-ng in spite of physfs?
[div align=\"right\"][{POST_SNAPBACK}][/a][/div] (http://index.php?act=findpost&pid=116259\")
I'll take a stab at answering some of your questions.
I only recently learned how to use the "find" command. It is used as follows:
find -name
So, to find any config files that are in the current directory (or any subdirectories), I would issue a:
find . -name *.cfg
[the . represents the current directory. I've done double-takes seeing it like that.]
To find all package configuration files anywhere on your system, you might do:
find / -name *.pc
[Find also does other weird and wonderful things -- like finding files newer than a given date; but most of the time I'm just glad to be able to search for a file!]
It is a problem, in general, knowing where a library is located. For the SDL, the sdl-config tool was created.
If you run it as follows:
sdl-config --cflags --libs
It will tell you what flags to compile your application with. Indeed, you use the cool back-tick operator, as follows:
cc test.cpp -otest `sdl-config --cflags --libs`
and the same script will run on any system with sdl on it, without the paths needing to be hard-coded.
There is a more general tool called pkg-config. I learned about it recently, and posted [a href=\"https://www.oesf.org/forums/index.php?showtopic=17787&view=findpost&p=116083]about it.[/url] I was cross-compiling, but I imagine the same thing applies. Your library may create a .pc file, and if you add that to the PKG_CONFIG_PATH, then configure can find libraries it is looking for.
Hope it helps,
Armagon
-
SPOOKY!
I'm building it right now on OpenBSD.
It's a little flakey try export LDFLAGS="-L/usr/local/lib -lpthread" prior to building.
it doesn't seem to link pthread in the configure tests, which *cough* IS required for physfs (see your config.log).
-Andy
-
thanks to both of you!
i'll give it a try and be back with results!
thx
seb
-
I got lincity-ng to run on OpenBSD, however, it runs with 60 odd Mb of memory usage.
Not very practical I found.
-Andy
-
SPOOKY!
I'm building it right now on OpenBSD.
It's a little flakey try export LDFLAGS="-L/usr/local/lib -lpthread" prior to building.
it doesn't seem to link pthread in the configure tests, which *cough* IS required for physfs (see your config.log).
-Andy
[div align=\"right\"][a href=\"index.php?act=findpost&pid=116308\"][{POST_SNAPBACK}][/a][/div]
hmm.. are you referring to building physfs itself or to the building process of lincity-ng, when configure complains about not having physfs? i understand your suggestions that i probably built physfs correctly but somehow didn't integrate it in the building process of lincity-ng correctly
if i get it right, exporting LDFLAGS as above tells the linker where the library is, my questions here:
- does "configure" check the SAME library paths as the linker?
- what does "-Ipthread" do? and: don't i have to specify the path, where exactly pthread (i presume with ending ".h") is located? and: i'm kind of new to this, but doesn't "-I" mean "include header file" and should be given to the compiler with CFLAGS and not LDFLAGS? shouldn't i specify some library here with "-L"?
please tell me if i'm speaking nonsense, since i only have a rough idea of what i'm doing here
thx
seb
-
Sorry Seb, I should have clarified this.
Yes this is for the configure stage of lincity-ng.
the configure script attempts to link with some functions in physfs but doesn't include in the link specification the instruction to also link in the posix threads libraries (libpthread) that physfs requries. The link therefore fails giving lincity-ng's configure the impression that the library isn't suitable.
Specifying -lpthread simply instructs the linker to also link in libpthread.
And yes CFLAGS, CPPFLAGS and LDFLAGS are normally used by configure when it builds the Makefile (you should be able to see the flags you specified appear in the makefiles that it emits).
-Andy
-
the configure script attempts to link with some functions in physfs but doesn't include in the link specification the instruction to also link in the posix threads libraries (libpthread) that physfs requries. The link therefore fails giving lincity-ng's configure the impression that the library isn't suitable.
Specifying -lpthread simply instructs the linker to also link in libpthread.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=116357\"][{POST_SNAPBACK}][/a][/div]
thanks andy!
now i'm beginning to understand how this works! in that process i realised that "-lpthread" starts with a small(? - i mean "non-capital") "L" instead of a capital-"i"! probably now you can understand my confusion better
thx again
seb
-
yep, if some instructions don't work I always try copying using the clipboard just to be sure. been caught out like that myself before
-
jam is running..
..now it isn't long until lincity-ng is built!
-
jam is running..
..now it isn't long until lincity-ng is built!
[div align=\"right\"][a href=\"index.php?act=findpost&pid=116447\"][{POST_SNAPBACK}][/a][/div]
You will need to run with ..
lincity-ng -s -S 640x480
otherwise it will default to 1024x768, -s stops the OpenGL attempt. Also you may find that you want to change some of the font sizes (particularly on the screen you get when you select new game). You will see what I mean.
-Andy
-
You will see what I mean.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=116449\"][{POST_SNAPBACK}][/a][/div]
hm.. probably i will see later, i tried building overnight and this morning i found zaurus has crashed , but - as it seems - after finishing the "jam"-command, although obviously not correctly, the last messages were about a couple of packages skipped or not build correctly or something like that
i'll first first have to find out what might here be the case..
-
ok, i redid it
last output messages from "jam"-building tool:
failed C++ ./build/ ... blabla ... /HelpWindow.o
...skipped lincity-ng for lack of <T!src!lincity-ng!>main.o...
...failed updating 16 target(s)...
...skipped 4 target(s)...
especially the "skipped lincity-ng" worries me
before that scattered around the place more "failed"-messages and errors as well as warnings, for different reasons (unused variables, some things which aren't declared etc.), some even related to physfs
so i don't have a clue where to start
-does "jam" have something like a "config.log" with more details?
-another point could probably be, that i used an ipk for the installation of SDL_gfx which probably doesn't work correctly (see https://www.oesf.org/forums/index.php?showtopic=17927) (https://www.oesf.org/forums/index.php?showtopic=17927))
@iamasmith: how did you get SDL_gfx to work?
any suggestions from anyone which might help are very much appreciated
regards seb
-
...
@iamasmith: how did you get SDL_gfx to work?
any suggestions from anyone which might help are very much appreciated
regards seb
[div align=\"right\"][a href=\"index.php?act=findpost&pid=116516\"][{POST_SNAPBACK}][/a][/div]
Umm... SDL_gfx is in the ports tree on OpenBSD I simply did a make install in that tree to install the library.
I have only actually built and installed this on Gentoo and OpenBSD and I didn't have any problems from the points that I typed jam<cr>
-Andy
-
maybe the CFLAGS/ LDFLAGS weren't set correctly due to starting a different console in between, i don't know, so i'll give it again a try
since I don't know about OpenBSD, will SDL_gfx from there work for me?
-
The ports pulls standard distribution archives, patches them (where necessary) for OpenBSD, configures them builds them then turns them into install tarballs.
You would be better just building SDL_gfx from the distribution source if you are using Linux.
-Andy
-
You would be better just building SDL_gfx from the distribution source if you are using Linux.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=116547\"][{POST_SNAPBACK}][/a][/div]
for some reason i didn't succeed building it from source, that's why i took the ipk, nevertheless the person who has built the ipk also had problems building it (that's why he said it probably doesn't work correctly) , so i guess there must be some trick to it
hm, i first have to think about how to proceed here..
-
What failed in the SDL_gfx build Seb?
-
i'm not quite sure anymore but i will find out again